SlideShare a Scribd company logo
GitHub Actions in Action MEAP V03 Michael
Kaufmann install download
https://ebookname.com/product/github-actions-in-action-
meap-v03-michael-kaufmann/
Get the full ebook with Bonus Features for a Better Reading Experience on ebookname.com
Instant digital products (PDF, ePub, MOBI) available
Download now and explore formats that suit you...
Bootstrapping Microservices Second Edition With Docker
Kubernetes GitHub Actions and Terraform Ashley Davis
https://ebookname.com/product/bootstrapping-microservices-second-
edition-with-docker-kubernetes-github-actions-and-terraform-
ashley-davis/
Elementary Algebra 9th Edition Jerome E. Kaufmann
https://ebookname.com/product/elementary-algebra-9th-edition-
jerome-e-kaufmann/
Learn SQL in a Month of Lunches MEAP V13 Jeff Iannucci
https://ebookname.com/product/learn-sql-in-a-month-of-lunches-
meap-v13-jeff-iannucci/
Dialogue in Places of Learning Youth Amplified in South
Africa 1st Edition Adam Cooper
https://ebookname.com/product/dialogue-in-places-of-learning-
youth-amplified-in-south-africa-1st-edition-adam-cooper/
Anti Oppressive Practice Social Care and the Law 2nd
Edition Jane Dalrymple
https://ebookname.com/product/anti-oppressive-practice-social-
care-and-the-law-2nd-edition-jane-dalrymple/
Enron Ascending The Forgotten Years 1984 1996 1st
Edition Bradley
https://ebookname.com/product/enron-ascending-the-forgotten-
years-1984-1996-1st-edition-bradley/
Rommel s Afrika Korps El Agheila to El Alamein First
Edition George R. Bradford
https://ebookname.com/product/rommel-s-afrika-korps-el-agheila-
to-el-alamein-first-edition-george-r-bradford/
Traditional Micronesian Societies Adaptation
Integration and Political Organization 1st Edition
Glenn Petersen
https://ebookname.com/product/traditional-micronesian-societies-
adaptation-integration-and-political-organization-1st-edition-
glenn-petersen/
Food Farms and Solidarity French Farmers Challenge
Industrial Agriculture and Genetically Modified Crops
1st Edition Chaia Heller
https://ebookname.com/product/food-farms-and-solidarity-french-
farmers-challenge-industrial-agriculture-and-genetically-
modified-crops-1st-edition-chaia-heller/
Electrodes for Li ion Batteries Materials Mechanisms
and Performance 1. Aufl Edition Laure Monconduit
https://ebookname.com/product/electrodes-for-li-ion-batteries-
materials-mechanisms-and-performance-1-aufl-edition-laure-
monconduit/
GitHub Actions in Action MEAP V03 Michael Kaufmann
GitHub Actions in Action MEAP V03 Michael Kaufmann
GitHub Actions in Action
1. welcome
2. 1_Introduction_to_GitHub_Actions
3. 2_Hands-on:_My_first_Actions_Workflow
4. 3_Workflows
5. 4_GitHub_Actions
6. 5_Runners
7. 6_Self-hosted_runners
8. 7_Managing_your_self-hosted_runners
9. 8_Continuous_Integration_(CI)
welcome
Thank you for purchasing the MEAP for GitHub Actions in Action. We hope
it will give you a kick-start into what is in our opinion the best and most
flexible workflow platform for engineers.
The book consists of three parts. Part 1 explains the basics of GitHub actions.
It uses a practical, hands-on approach – but it covers all basics with simple
examples. Part 2 explains the workflow runtime in depth. This knowledge
will help you completely understand the platform's architecture and security
considerations. Part 3 covers the whole topic of CI/CD – the main use case
for GitHub Actions. This part contains more complex real-life examples. It
also dives into security, compliance, and optimizing performance and costs.
Please let us know your thoughts in the liveBook Discussion forum on what's
been written so far [and what you'd like to see in the rest of the book]. Your
feedback will be invaluable in improving GitHub Actions in Action.
Thanks again for your interest and for purchasing the MEAP!
—Michael Kaufmann, Rob Bos, Marcel de Vries
In this book
welcome 1 Introduction to GitHub Actions 2 Hands-on: My first Actions
Workflow 3 Workflows 4 GitHub Actions 5 Runners 6 Self-hosted runners 7
Managing your self-hosted runners 8 Continuous Integration (CI)
1 Introduction to GitHub Actions
This chapter covers the following topics
Getting an introduction to the GitHub universe
Understanding what GitHub Actions and Workflows are
Learning about the possibilities of GitHub Actions that go beyond
CI/CD pipelines
Understanding licenses and pricing for GitHub and GitHub Actions
GitHub is more than just a platform for hosting and sharing code. It has
become the beating heart of the open-source community, with millions of
developers from all over the world collaborating on projects of every type
and size. Founded in 2008, GitHub has since grown to host over 200 million
repositories and 100 million users, with a staggering 3.5 billion contributions
made in the last year alone.
And now, with GitHub Actions, developers have access to a powerful and
flexible toolset for automating their workflows, from Continuous Integration
(CI) and Continuous Deployment (CD) to custom automation tasks and
beyond. GitHub Actions is much more than just a CI/CD tool – it's a
comprehensive automation platform that can help streamline your entire
development workflow.
This book will show you how to make the most of GitHub Actions and take
your development process to the next level. It is for everyone that wants to
learn more about GitHub Actions – from complete beginners to already
advanced users that want to bring their knowledge to the next level. You will
learn how to use Actions effectively and secure, and it brings a lot of real-
world examples for using it for CI/CD scenarios.
1.1 An introduction to the GitHub universe
At the core of GitHub lies the essential component of version control, namely
git. This system has played a significant role in transforming the way in
which software is developed and is widely considered the standard for the
versioning of code, which in this case does not just refer to program code. It
includes infrastructure, configuration, documentation, and many other types
of files. Git has risen to prominence due to its remarkable flexibility, which
stems from its classification as a distributed version control system rather
than a central one. As a result, developers can work while disconnected from
the central repository, utilizing the full functionality of the version control
system, and later synchronize changes with another repository. The efficacy
of git's distributed architecture is attributed to its ability to store snapshots of
files with changes in its database.
GitHub has extended beyond its function as a hosting platform for git and has
evolved into a comprehensive DevOps platform that supports collaborative
coding through asynchronous means, such as pull requests and issues. The
platform's capabilities have expanded into six broad categories, which
include:
collaborative coding,
planning and tracking,
workflows and CI/CD,
developer productivity,
client applications, and
security.
These categories encapsulate the key features that GitHub offers, making it a
versatile and comprehensive DevOps platform that supports various stages of
software development.
From its inception, GitHub has prioritized a developer-centric approach,
resulting in a platform that places utmost importance on webhooks and APIs.
Developers can leverage either the REST API or the graph API to manipulate
all aspects of the GitHub platform. Authentication is also a straightforward
process, and developers can use GitHub as an identity provider to access their
applications. This user-friendly approach facilitates seamless integration with
other tools and platforms, making GitHub a versatile option not only for
open-source projects but also for commercial products. GitHub's extensive
ecosystem, which boasts over 100 million users, comprises the entire open-
source community, who collaborate to expand and enrich its functionality.
So, to understand the vastness of the GitHub ecosystem, one must also take
into account the various integrations available:
Planning and tracking: In addition to issues and milestones, GitHub
offers GitHub Discussions, an entire forum for collaboration on ideas.
Furthermore, GitHub Projects is a flexible planning solution that is fully
integrated with issues and pull requests, and it supports nested backlogs,
boards, and roadmaps. Moreover, GitHub integrates seamlessly with
other popular planning and tracking solutions such as Azure Boards and
Jira.
Client applications: GitHub provides a fully-featured code editor that
can be accessed directly in the browser. It also offers mobile
applications for both iOS and Android platforms, enabling teams to
collaborate from anywhere. Additionally, there is a cross-platform
desktop application and an extensible CLI available. Furthermore,
GitHub integrates smoothly with popular client applications such as
Visual Studio, Visual Studio Code, and Eclipse. Moreover, it seamlessly
integrates with popular chat platforms such as Slack and Teams.
Security: GitHub provides a comprehensive solution for ensuring
software supply-chain security, which includes several key features. For
example, it generates Software Bills of Material (SBoMs) to keep track
of all the components that are included in your software. And, with the
Dependabot functionality, GitHub can alert you whenever
vulnerabilities are detected in any of the dependencies you're using.
Furthermore, GitHub can scan your repository to detect secrets, and it
boasts a sophisticated code analysis engine called CodeQL. The
platform also supports integrations with other security tools like Snyk,
Veracode, or Checkmarx, and it can be integrated into Microsoft’s
Defender for DevOps.
Developer Productivity: In GitHub, developers can quickly create a
customized containerized development environment using GitHub
Codespaces. This allows new developers to be productive right away.
Additionally, Copilot, an AI-powered assistant, can generate code based
on the context of comments or other code. This can significantly
increase productivity, with reports of up to 50% gains. GitHub also
offers code search, the command palette, and other features that can
further enhance developer productivity.
Workflows and CI/CD: In the world of continuous integration and
continuous delivery (CI/CD), GitHub is a popular platform that enjoys
widespread support from most CI/CD tools in the market. Furthermore,
GitHub provides a secure integration with all the major cloud providers
for CI/CD workflows using Open ID Connect (OIDC). This ensures a
secure and streamlined experience for developers who rely on cloud-
based services. Additionally, GitHub Packages is equipped with a robust
package registry that supports a wide range of package formats,
providing a powerful and versatile tool for developers to manage and
distribute their code packages.
GitHub Actions serves as the automation engine for the GitHub ecosystem
(see Figure 1.1). It allows users to automate various tasks, with a vast library
of over 18,000 actions available in the marketplace. From issue triaging to
automatic documentation generation, there is a building block – called
Action – available to address nearly any task. With GitHub Actions, users
can easily and securely automate their workflows.
Figure 1.1 The GitHub ecosystem has thousands of integrations
That’s why GitHub Actions is more than just CI/CD. It is an automation
engine that can be used to automate any kind of manual tasks in engineering,
and it is already used by millions of developers worldwide. It can be used to
not only automate GitHub – but the entire GitHub Universe.
1.2 What are GitHub Actions and Workflows
GitHub Actions is both the name of the workflow engine and the name of an
individual, reusable, and easily sharable workflow step within GitHub. This
can lead to confusion. Workflows are composed of YAML files that are
stored in a specific repository location (.github/workflows). In Chapter 3,
GitHub Action Workflows, you will gain a comprehensive understanding of
GitHub Action workflows and the YAML syntax. Triggers initiate the
workflow, and one or more jobs are included in the workflow. Jobs are
executed on a workflow runner, which can be a machine or container with an
installed runner service. GitHub offers runners with Linux, macOS, and
Windows operating systems in various machine sizes, but you can also host
your own runners. In Part 2, Workflow Runtime, you will learn about runners
and the essential security measures to consider when hosting your own
runners. Jobs execute in parallel by default, but the needs property can be
used to chain jobs together. This enables you to fan out your workflow and
run multiple jobs in parallel while waiting for all parallel jobs to complete
before proceeding.
Environments in GitHub Actions provide a way to protect jobs by defining
protection rules such as manual approvals, wait timers, and protected secrets.
With this, you can create visual workflows that track for example your entire
release pipeline, giving you complete control over your deployment process.
Please refer to Figure 1.2 for an example of a workflow with environments
and approvals.
Figure 1.2 A GitHub Workflow with environments and approvals
A job is comprised of one or more steps that are executed sequentially. A step
can take the form of a command line, script, or reusable step that is easily
shareable, known as a GitHub Action. These Actions can be authored in
JavaScript or TypeScript and executed in a NodeJS environment.
Additionally, it is possible to run containers as Actions or create composite
Actions that serve as a wrapper for one or multiple other Actions. Actions are
covered in more depth in Chapter 4, GitHub Actions.
In Figure 1.3 you can see an overview of the basic elements that make up a
workflow and their syntax.
Figure 1.3 The basic syntax and elements that make up a GitHub Actions workflow
You will learn more about workflow syntax, YAML, GitHub Actions, and
authoring and debugging workflows and Actions in Chapter 3, GitHub
Action Workflows, and in Chapter 4, GitHub Actions.
1.3 GitHub Actions - More than CI/CD pipelines
GitHub workflows are intended to automate various tasks. In addition to
pushing code, there are numerous triggers available. A workflow can be
activated when a label is added to an issue, when a pull request is opened, or
when a repository is starred.
In Listing 1.1 you can find an example workflow that applies labels to opened
or edited issues based on the content of the body of the issue.
Listing 1.1 A sample GitHub Actions workflow that can help triage GitHub issues
name: Issue triage
on:
issues:
types: [opened, edited]
jobs:
triage:
runs-on: ubuntu-latest
steps:
- name: Label issue
run: |
if (contains(github.event.issue.body, 'bug')) {
echo '::add-labels: bug';
} else if (contains(github.event.issue.body, 'feature')) {
echo '::add-labels: feature';
} else {
echo 'Labeling issue as needs-triage';
echo '::add-labels: needs-triage';
}
This is just an example to show you the power of GitHub actions.
GitHub does not automatically download or clone your repository when a
workflow is executed. In many automation scenarios, the repository's code or
files may not be required, and the workflow can be completed much faster
without cloning the repository. If you intend to utilize GitHub Actions for
CI/CD purposes, the first step in a job should be to download the code by
utilizing the checkout action.:
steps:
- name: Checkout repository
uses: actions/checkout@v3
This action will clone your repository, allowing you to build and test your
solution.
In Part 3, CI/CD with GitHub Actions, you will learn in depth how to use
GitHub Actions for CI/CD in a secure and compliant way.
1.4 Hosting and pricing for GitHub and GitHub
Actions
GitHub (https://github.com) is hosted in data centers located in the United
States. Signing up for GitHub is free and provides users with unlimited
private and public repositories. While many features on GitHub are available
for free on open-source projects, they may not be available for private
repositories.
Enterprises have a variety of options for hosting GitHub (see Figure 1.4).
Figure 1.4 GitHub Enterprise Cloud, GitHub Enterprise Server, and GitHub Connect
1.4.1 GitHub Enterprise Cloud
GitHub Enterprise Cloud (GHEC) is a Software as a Service (SaaS)
offering from GitHub, and it is fully hosted on its cloud infrastructure in the
United States. GHEC provides additional security features and supports
single sign-on for users. With GHCE, users can host private and public
repositories, including open-source projects within their enterprise
environment.
GHEC guarantees a monthly uptime Service Level Agreement (SLA) of
99.9%, which translates to a maximum downtime of 45 minutes per month.
1.4.2 GitHub Enterprise Server
The GitHub Enterprise Server (GHES) is a system that can be hosted
anywhere, either in a private data center or in a cloud environment like
Azure, AWS, or GCP. Using GitHub Connect, it is possible to connect to
GitHub.com, which enables the sharing of licenses and the use of open
source on the server.
GHES is based on the same source as GHEC, which means that all features
eventually become available on the server a few months later. However,
some features provided in the cloud must be managed independently on
GHES. For instance, runners in GitHub Actions require self-hosted solutions,
whereas the cloud provides GitHub-hosted runners.
Managed Services are also available that provide hosting for GHES,
including in an Azure data center within the user's region. This approach
ensures full data residency and eliminates the need to manage the servers
personally. Some Managed Services also include hosting for managed
GitHub Actions runners.
1.4.3 Pricing for GitHub
It is important to Understand the pricing model of GitHub and GitHub
Actions when you start playing around with them, to not accidently burn
though all you free minutes.
GitHub's pricing model is based on a monthly per-user billing system and
consists of three tiers: Free, Team, and Enterprise (see Figure 1.5).
Figure 1.5 Overview of GitHub pricing triers
Public repositories, and therefore open-source projects, are entirely free of
charge and offer many features such as Actions, Packages, and various
security features. Private repositories are also available for free, but with
limited functionality, including 2,000 Action minutes and 500 MB of storage
per month.
To collaborate on private repositories with advanced features such as
protected branches, codeowners, and enhanced pull request features, a team
license is required. This license also includes access to Codespaces, although
this feature requires a separate payment. Additionally, the team tier provides
3,000 free Action minutes per month and 2GB of monthly storage for
packages.
Free and Team tiers are only available on GitHub.com. If users require
GitHub Enterprise Cloud or Server, the GitHub enterprise license must be
purchased. This license includes all enterprise features, such as single sign-
on, user management, auditing, and policies, along with 50,000 Action
minutes and 50GB of storage for packages per month. It also allows for the
purchase of additional add-ons, such as Advanced Security or Premium
Support.
1.4.4 Pricing for GitHub Actions
Hosted runners are provided for free to users with public repositories. The
amount of storage and monthly build minutes available to users depends on
their GitHub edition, as shown in Table 1.1:
Table 1.1 Included storage and minutes for the different GitHub editions
GitHub edition Storage Minutes Max concurrent jobs
GitHub Free 500 MB 2,000 20 (5 for macOS)
GitHub Pro 1 GB 3,000 40 (5 for macOS)
GitHub Free for
organizations
500 MB 2,000 20 (5 for macOS)
GitHub Team 2 GB 3,000 60 (5 for macOS)
GitHub Enterprise
Cloud
50 GB 50,000 180 (50 for macOS)
If you have purchased GitHub Enterprise through your Microsoft Enterprise
Agreement, it is possible to link your Azure Subscription ID to your GitHub
Enterprise account. This will allow you to use Azure Billing to pay for
additional GitHub Actions usage beyond what is already included in your
GitHub edition.
It is important to note that jobs running on Windows and macOS runners
consume more build minutes than those running on Linux. Windows
consumes build minutes at a rate of 2x and macOS consumes build minutes at
a rate of 10x, meaning that using 1,000 Windows minutes would use up
2,000 of the minutes included in your account, while using 1,000 macOS
minutes would use up 10,000 minutes included in your account. This is due
to the higher cost of build minutes on these operating systems.
Users can pay for additional build minutes on top of what is included in their
GitHub edition, with the following build minute costs for each operating
system:
Linux: $0.008
macOS: $0.08
Windows: $0.016
These prices are for the standard machines with 2 cores.
The charges for extra storage are uniform for all runners, set at $0.25 per GB.
In Chapter 5, Runners, you will learn in more detail, how minutes and extra
storage are calculated.
If you are a customer who is billed monthly, your account is subject to a
default spending limit of $0 (USD), which restricts the use of extra storage or
build minutes. However, if you pay by invoice, your account is given an
unrestricted spending limit by default.
If you set a spending limit above $0, any additional storage or minutes
utilized beyond the included amounts in your account will be invoiced until
the spending limit is reached. By setting up a spending limit, the Enterprise
Administrators will receive e-mail notifications at reaching 75%, 90%, and
100% of the spending limit, on top of the default notifications for utilizing
the same percentages of the included minutes in their monthly plan.
You won't incur any costs when using self-hosted runners since you provide
your own computing resources.
It is important that you are aware of the costs when playing around with
workflows. Especially if you try certain triggers. Best is to just use public
repos for training purposes – in this case the workflows are free of charge in
any case.
1.5 Conclusion
In this chapter, you have learned about the GitHub ecosystem and the myriad
of possibilities it offers for automating tasks, extending beyond just CI/CD,
using GitHub Actions. You have become familiar with key terms and
concepts related to Workflows and Actions, enabling you to better navigate
and utilize these features. Additionally, you have explored the hosting
options and pricing models available for both GitHub and GitHub Actions.
Moving forward, the next chapter will provide an opportunity for practical
application, as you embark on writing your first workflow. This initial
exercise will serve as a useful foundation before delving further into the
syntax and nuances of GitHub Action Workflows, which will be covered in
Chapter 3.
1.6 Summary
The GitHub universe consists of a vast ecosystem of products, partners,
and communities around the areas of collaborative coding, planning, and
tracking, workflows and CI/CD, developer productivity, client
applications, and security.
GitHub Actions is a workflow engine to automate any kind of manual
tasks in engineering in the GitHub ecosystem beyond CI/CD.
GitHub Action workflows are YAML files in a repository in the folder
.github/workflows and contain triggers, jobs, and steps.
A GitHub Action is reusable workflow step that can be easily shared
through the GitHub marketplace.
GitHub Actions are free for public repositories and paid per minute for
private ones if you use the GitHub hosted runners; but you have free
included Actions minutes in all GitHub pricing tears.
Private runners are always free – but the pricing for hosted runners
varies depending on the machine size and type.
2 Hands-on: My first Actions
Workflow
This chapter covers the following topics
Creating a new workflow
Using the workflow editor
Using actions from the marketplace
Running the workflow
Before we dive into the details of the workflow and YAML syntax in
Chapter 3, GitHub Workflows, it’s a good idea to familiarize ourselves with
the workflow editor, gain some practical experience in creating a workflow,
and test it out to see it in action. This hands-on approach will help us better
understand the concepts and give us the ability to quickly try something out,
if it is unclear. Don’t worry if there are parts of the workflow syntax that you
don’t understand yet– we’ll be covering those in detail in the upcoming
chapters.
2.1 Creating a new workflow
Let's begin this hands-on lab by signing into your GitHub account. Then,
follow the link https://github.com/new to create a new repository. To ensure
you have unlimited Action minutes, create a new public repository in your
user profile and name it ActionInAction. Initialize the repository with a
readme so that we can retrieve the files in the workflow later on. Lastly, click
on the Create repository button to complete the process (refer to Figure 2.1).
Figure 2.1 Creating a new repository
The repository
You can find companion repositories in the GitHub Organization
https://github.com/GitHubActionsInAction If you have already cloned the
companion repository https://github.com/GitHubActionsInAction/Part1, you
can also create a new workflow in this repository instead of creating a new
one.
Now, let's navigate to the Actions tab inside the repository. If this is a new
repository and there are no workflows set up yet, you will automatically be
redirected to the new Action page (Actions/new). This is the same page you
would land on if you clicked the New workflow button in the workflow
overview page, which is displayed if there are workflows in the repository.
The new workflow page presents a plethora of templates for different
languages and scenarios. You can certainly explore these available templates,
but for our first workflow, we want to create the workflow ourselves. To
proceed, simply click on the corresponding link as illustrated in Figure 2.2.
Figure 2.2 Set up a new workflow in the workflow editor
An empty workflow will be created and opened in the workflow editor.
2.2 Using the workflow editor
It's worth noting that a workflow is essentially a YAML file that resides in
the folder .github/workflows. You can modify the filename as necessary
from the top of the editor window. On the right side of the editor, you'll find
the marketplace as well as the workflow documentation. The documentation
provides valuable guidance to get you started. Moreover, the editor supports
auto-complete when you use the Ctrl+Space keyboard shortcut. To give you
a better idea of the key components of the editor, please refer to Figure 2.3.
Figure 2.3 The workflow editor
To begin, let's change the filename of the workflow file to
MyFirstWorkflow.yml. Once that's done, click into the editor and open the
auto-complete using Ctrl+Space. From the list of valid elements, choose
name. The auto-complete feature will automatically add name: including the
correct spacing to the file. Next, name the workflow My First Workflow and
hit enter to start a new line.
Now, let's add triggers that will initiate the workflow. Begin a new line and
press Ctrl+Space once again. From the options presented, select on and then
push. Auto-complete will generate the following line, which will start the
workflow upon any push in any branch:
on: [push]
Suppose you want to trigger the workflow from only certain branches. In that
case, you need to add additional parameters to the push trigger. First, delete
the [push] and press enter to start a new line. Use the tab key to get the
correct indentation. Next, press Ctrl+Space again, select push, and notice
how auto-complete now functions differently. It will automatically create a
new line and offer all the available options for the push trigger. From there,
choose branches and add the main branch, as shown in the documentation.
Create a new line with the same indentation as the push trigger and add a
workflow_dispatch trigger, which will enable you to trigger the workflow
manually. At this point, your workflow should resemble the one depicted in
Figure 2.4.
Figure 2.4 Naming the workflow and adding triggers
To add a job to the workflow, create a new line in the workflow file with no
indentation (same as name and on). Use auto-complete to write jobs: and
move to the next line. Note that auto-complete won't work here, as the name
of the job is expected. Enter MyFirstJob:, press enter to start a new line, and
tab to indent one level. Auto-complete should work again now. Choose runs-
on and enter ubuntu-latest, which will execute the job on the latest Ubuntu
machine hosted by GitHub.
Next, add a step to the job. If you choose steps from auto-complete, it will
insert a small snippet with a YAML array that you can use to enter your first
step. For example, you can output Hello World to the console using run and
echo (see Listing 2.1).
Listing 2.1 The first step outputs Hello World to the console
jobs:
MyFirstJob:
runs-on: ubuntu-latest
steps:
- run: echo " Hello World!"
Error checking in the editor
It's important to note that if there are errors in your workflow file, the editor
will mark the corresponding parts and you can hover over it with the mouse
to get additional information and other suggestions (see Figure 2.5).
The editor will highlight structural errors, unexpected values, or even
conflicting values, such as an invalid shell value for the chosen operating
system.
Figure 2.5 Editor highlighting errors in the file and providing suggestions
In the next step we will add a GitHub Action from the marketplace.
2.3 Using actions from the marketplace
In the right pane, next to documentation, you can find the marketplace for
GitHub Actions. To locate the Checkout action from GitHub Actions, start by
typing checkout in the search bar (see Figure 2.6). Please note that the author
of the Action is not GitHub, but actions, and that it has a blue badge with a
checkmark, indicating that the author is a verified creator.
Figure 2.6 Searching in the marketplace from within the editor
If you click on the marketplace listing, you will be taken to a page with more
details about the action. You can also copy the template using the copy
button (see Figure 2.7) or copy parts of the YAML code snippet provided in
the Installation section. The parameters for the action are under the with:
property. They are all optional, so you can delete them all or just copy over
name: and uses:. Paste the action as a step to the workflow like illustrated in
Figure 2.7.
Figure 2.7 Adding the action from the marketplace to the workflow
As a last step, we add a script that displays the files in the repository using
the tree command. Use the name property to set the name that is displayed
in the workflow log. In this step we use a multi-line script using the pipe
operator | and a two-blank indentation for the script. In the first line we
output the name of the repository. We use an expression for that. We then use
the tree command to output the files in the repository (see Listing 2.2):
Listing 2.2 Run a multiline script to display all files in the repository
- name: List files in repository
run: |
echo "The repository ${{ github.repository }} contains the following fil
tree
If the editor does not indicate any errors, commit the workflow now to your
main branch (see Figure 2.8).
Figure 2.8 Committing the new workflow file
This will automatically trigger a workflow run because of the push trigger.
2.4 Running the workflow
The workflow will start automatically because of the push trigger on the main
branch. To observe the workflow run, navigate to the Actions tab (see Figure
2.9). In the case of a push trigger, the name of the workflow run corresponds
to the commit message. Additionally, you can view the branch on which the
workflow was executed, as well as the time and duration of the run. Clicking
on the workflow run will provide you with more detailed information.
Figure 2.9 The workflow runs in the Action tab
Within the workflow run overview page, you will come across a detail pane
situated at the top, providing information about the trigger, status, and
duration of the workflow. On the left-hand side, you will find a list displaying
the jobs, while the workflow designer is located in the center (see Figure
2.10). Clicking on a specific job will redirect you to the corresponding job
details page.
Figure 2.10 The workflow run overview
On the job details page, you will discover a log that allows you to track the
progress of the running workflow. Each step within the workflow has its own
collapsible section for easy navigation. Additionally, you will notice an
additional Set up job section, providing additional details about the runner
image, operating system, installed software, and workflow permissions.
Each line in the workflow log is equipped with a deep link, enabling you to
directly access a specific line within the log. In the top-right corner, you will
find a settings menu where you can choose to display timestamps in the log
or download the entire log for further analysis (see Figure 2.11).
Figure 2.11 The job details containing the workflow run log
With the inclusion of the workflow_dispatch trigger in your workflow, you
now have the ability to manually run the workflow. To initiate the workflow
manually, return to the Actions tab and select the workflow from the left-
hand side, as illustrated in Figure 2.12. Once selected, you will encounter a
Run workflow menu that you can utilize to trigger the workflow.
Figure 2.12 Triggering a workflow manually
While the workflow is starting, go to the workflow overview page and the job
details page to observe the workflow in real time.
2.5 Conclusion
In this chapter, you have familiarized yourself with the workflow editor and
have gained practical experience in creating and executing a workflow. You
have also explored the documentation and incorporated a GitHub Action
from the marketplace.
In the upcoming chapter, you will delve into the intricacies of YAML and
workflow syntax. The chapter will provide comprehensive insights into
advanced concepts, including expressions and workflow commands.
2.6 Summary
New workflows are created under Actions/new.
The workflow editor contains documentation and the marketplace.
The workflow editor helps you writing the workflow with syntax-
highlighting, auto-complete, and error checking.
You can simply copy and paste actions from the marketplace into you
workflow to use them.
The workflow has a live-log with deep-linking that provides all the
information for the workflow run.
3 Workflows
This chapter covers the following topics
Understanding YAML and the YAML syntax
Learning the basics of the workflow syntax
Understanding workflow triggers, expressions, and contexts
Getting an introduction into advanced workflow concepts like workflow
commands
Learning best practices for authoring and debugging workflows
Now that you have gained the first practical experience, it is time to fully
understand the syntax for workflows.
Workflows are written in YAML. That’s why it is really important to fully
understand YAML before writing workflows.
3.1 YAML
YAML stands for YAML Ain't Markup Language and is a data-serialization
language optimized to be directly writable and readable by humans. It is a
strict superset of JSON but with syntactically relevant newlines and
indentation instead of braces. In the next sections we go through all the
YAML elements that are important for writing workflows.
3.1.1 YAML Basics
YAML files are text files and have a .yml or .yaml extension. Because
YAML uses indentation instead of braces these text files can be versioned
very well with git as changes are always per line.
YAML files can have different encodings – but GitHub uses UTF-8 for the
workflows. You can write comments in YAML by prefixing text with a hash
(#):
Exploring the Variety of Random
Documents with Different Content
1 68 HERALDRY. Lines of Partition are the various dividing
and border lines, in addition to simple right lines and curves. These
are illustrated in another part of this work. Lion. — A Royal symbol.
In Heraldry, the king of beasts. See chapter on the Heraldry of the
Lion. Lion^ Demi. — In a "demi-lion" the tail, although separate
from the body, is represented. Lion's fambe or Gambe. — The whole
fore-leg of a lion. Lioficels. — A field of lions. A term used when
more than three lions occur on a shield. Lined. — Having cords or
chains attached ; also having an inside lining. Lists. — Enclosed
spaces for holding tournaments. Livery Colours. — Colours adopted
by families for the dress of their servants ; these should properly be
of the chief colours of the family arms. Colours were originally
adopted by certain eminent personages for various decorative uses :
as scarlet and white, by the Plantagenets ; blue and white, by the
Lancastrians ; blue and crimson, by the House of York : white and
green, by the Tudors, &c., &c. Lizard, — A beast resembling a wild
cat. Lizard. — The reptiles of this name are generally blazoned vert.
Lobster. — Always represented with claws in chief, Lochabar Axe, —
An axe with a broad blade and long handle. Lodged.— K term
applied to a stag, or other beast of the chase, as couchant applies to
the lion. Lozenge, — A four-sided diamond-shaped figure.
Z^jsr^-//^.— Covered with or composed of lozenges; that is, a field
divided by diagonal lines crossing at intervals, and forming a
diamond pattern.
GLOSSARY. 169 Luce. — The fish called a pike. In the first
scene of Shakspeare's " Merry Wives of Windsor," Slender says : "
They may give the dozen white luces in their coat.^^ The "dozen
white luces" apply to the arms of the Lucy family. (No. 242 is the
seal of Sir Thomas Lucy, of Charlecote .; . —three white luces
interlaced.) r^^m^cc^ (^^ Luna. — The ancient blazon for argent.
Lure. — See HawJH s-lure. Lyinphad. — An ancient galley, with one
mast, and a sail furled, and propelled by oars. This charge is borne
by the Lords of Lorne. Lyon. — The King-of-Arms for Scotland,
whose title is derived from the lion in the Royal shield. Originally he
was styled Lord Lyon. NiSBET says he has precedence of all knights
and gentlemen other than State offi- '^^^ ^''^' cers. Lyon ranks
next to Garter. Lyo7i Court. — The Herald's Court presided over by
Lyon, and composed of six Heralds and six Pursuivants. Mace. — An
ensign of authority ; originally a spiked metalheaded staff. Macers.
— Officers of the Supreme Courts in Scotland. Maideiis Head. — The
head, neck, and shoulders of a woman, generally crowned and
wreathed. Katherine Parr had for a badge a maiden^ s head, rising
from a large Tudor rose. Maintenance, Cap of. — See Cap of
Maintenance. Sir John Fearne says : ''The wearing of the cap had a
beginning from the duke or general of an army, who, having gotten
victory, caused the chiefest of the subdued enemies, whom he led,
to follow him in his triumph, bearing his cap after him, in token of
subjection and captivity."
I70 HERALDRY. Male Gryphon, — See Griffin. Maltese
Cross. — A cross having eight points. The Maltese Cross is worn as a
decoration by several Orders of Knighthood. Manacles or Shackles.
— Ancient handcuffs. Manch. — See Maunche. Maned. — Said of an
animal when the mane differs in tincture from the body. Maris Heady
is variously represented, viz., in profile, affronte, &c., &c. Mantle. —
A long and flowing robe, worn in the middle ages over the armour.
The mantle also constitutes an important part of the official insignia
of the Knightly Orders. Mantle of Ladies. — A garment worn in the
middle ages by ladies of rank. These were often decorated with
heraldic charges, generally the impaled arms of the lady and her
husband. Mantling. — The decorative ornament attached to the
helmet, and hanging down behind the escutcheon in an
achievement. It is sometimes intended to represent the mantle or
robe of estate, and then the arms or bearings of the shield are
generally embroidered on it j but when it represents the scarf called
the cointise, or contoise, it is depicted as ragged, with the torn ends
twisted into ornamental scrolls. It is not clear whether the cointise
and contoise did not refer to two different scarfs — the former to
that worn round the waist and over the shoulder, and the latter to
that attached to the helm. Man-Tiger.-^K fabulous heraldic monster,
with the body of a lion and the head of a man, having horns on the
head. Marcassin. — A young wild boar, represented as having its tail
hanging down. Mark of Cadency. — That heraldic distinction of the
several
GLOSSARY. 171 members of the same family, or of the
collateral branches of the same house, which is indicated by some
device specially adopted and borne for that purpose. Marquess. —
The second rank in the British Peerage. This title was originally given
to commanders on the sea-coast or frontiers of countries, but in the
time of Richard II. it became honorary. Marquess' Coronet, is formed
of a circle or band of gold, with four strawberry or oak-leaves, with
as many pearls alternating, slightly raised on pyramidal points. In
representations two of the pearls and three of the leaves are seen.
The cap is of crimson velvet, with a golden tassel, and guarded with
ermine. Marshal of Efigland. — See Earl Marshal. Marshalling. — The
disposition and arrangement of heraldic compositions. Marshalling is
more fully explained in another part of this work. Mars. — The
ancient blazon for gules or red. Martel. — See Hanifner. Martlet. —
The heraldic swallow, always represented without legs and with long
wings. In the early representations it is represented with legs. In
cadency, the Martlet is the difference of the fourth son. Mascle. — A
lozenge voided or perforated. In early Heraldry the lozenge and
mascle were probably one. Masaily. — Composed of mascles. A
shield divided into lozengeshaped compartments, having the centres
voided, and of alternate tinctures. Masoned. — Said of a castle, &c.,
when the divisional lines of the brickwork or stonework are
represented. Master of Ceref?iomes. — An office originally instituted
for the reception of distinguished persons at the Court of England. It
17: HERALDRY. is now extended to the president or
regulator of ordinary assemblies. Maiimhe. — A sleeve, having long
hanging ends, worn about the time of Henry I. by EngUsh
gentlewomen (Nos. 243 to 246). No. 243. No. 245. No. 246. Mayor.
— The chief magistrate of a city or corporate town. The Mayors of
London, York, and Dublin are styled " Lord Mayor," and the first has
borne the title of Right Honourable since the year 1354. Medals. —
Honourable insignia bestowed uy the Sovereiojn for eminent worth,
generally for naval or military services. Ancient medals bear the
portrait of princely personages only, but after the fifteenth century
this custom was discontinued. Medals generally have ribbons
attached, and sometimes small bars or clasps bearing the name of a
particular action in a campaign. Medjidic.—K Turkish Order, instituted
in 1852. Membered.—S2i6. of the beak and legs of any bird when
they are of a different tincture from the body Merchants' Marks. —
Devices adopted by the merchants and traders of the middle ages
(Nos. 247 and 248). Mercury. — The ancient blazon iox purpure or
purple. Meriette.—^te Martlet. Merlion. — See Martlet.
GLOSSARY. 173 Mermaid. — A fabulous being, half woman
and half fish. The mermaid is a badge of the Berkeleys ; it was the
dexter supporter of Sir Walter Scott ; and the supporters of Viscount
Boyne are meruiaids. Lord Berkeley, in his brass at Wotton-under-
Edge, A.D. 1392, wears a collar of mermaids (No. 249) over his
camail. No. 248. No. 249.— Collar of Mermaids. Merman. — A sea-
man or Triton. Mesne Lord. — An old title given to a lord who was
subject to another lord. Metals. — The metals in Heraldry are two—
viz., gold and silver — or and argent; the former represents
yellovv^, and the latter white. Gold is represented in engraving by
dots, and silver by the absence of lines or dots. Middle Base. — That
part of the shield close to the lower point. Middle Chief.— ThQ upper
central part of the shield. Mill-pick. — An instrument of the pickaxe
description, used for dressing millstones. No. 250. No. 251. No. 252.
No. 253.
174 HERALDRY. Millrind or Millrine. — The iron which is
fixed in the centre of a millstone (Nos. 250 to 253). Millstone. —
Generally represented charged with a millrind. When the lines of the
stone are of a different tincture, they must be blazoned picked of
such a tincture. Miniver. — A white fur used in Peers' robes. Mirror.
— Always represented framed and with a handle. Mitre, — A crown
or cap of Bishops and Abbots. In England, since the Reformation,
the mitre has not been worn by Bishops upon their heads, but it is
painted on their carriages, and otherwise variously borne. The
pastoral staff of the Bishop is again coming into use, and probably
the mitre will again be used for the purpose it was originally
intended. Molitie. — A cross, terminating like a millrind. Monarch. —
The chief ruling power of a community. The title of Monarch is
sometimes hereditary, and sometimes conferred after election, as in
the case of the Pope. Monogra7n.—K single initial or other letter,
also a combination of several initials or letters, arranged as to form a
single compound device. In the church of St. Mary, at Bury St.
Edmunds, the ceiling of the eastern compartment of the south aisle,
once the chantry of John Baret, is richly painted and diapered with
beautifully drawn collars of SS, each collar enclosing the monogram
of this zealous Lancastrian, I. B. Montem C//j/^w.— A triennial
procession No. 254.- Monogram and at Eton College, discontinued
about thirty Collar of SS op John Ba- ° ' •' RBT, Bury St. Edmunds.
years agO.
GLOSSARY, 175 Moon. — The moon is variously borne in
Heraldry. She is said to be in her complement, or /// plentitude,
when at the full ; she is a crescent when her horns point toward the
chief. She is decrescent when her horns point to the sinister, and
i7icrescent, or in increment, when her horns point to the dexter.
Moor Cock. — The male of the black game. Moor's Head. — The
heraldic term for the head of a negro man. This charge is generally
placed in profile, and wreathed about the forehead. Morion. — A
steel cap worn by a man-at-arms. It has neither visor nor beaver.
Morse. — A clasp, usually encircled with varied ornamentation.
Morse. — See Sea-Lion. Mortar. — See Pestle a?id Mortar. Mortier. —
A cap of estate. Mortcours. — Funeral lamps, borne in the arms of
the Waxchandlers' Company. Motto. — A word or sentence which
accompanies a coat of arms or badge. Mottoes originally belonged to
the badge, and when there was no badge, to the crest. In battle, the
motto or mot was used as a war-cry ; it generally bore reference to
the family name, the badge, or crest, or to some charge on the
shield. The motto of the Nevilles is, "Ne vile velis j" that of Vernon,
"Ver non semper viret." These two instances may be classed with
punning mottoes. Some mottoes take the form of a prayer. Mound.
— The ball or globe surmounting a crown. This ball or globe is
represented bearing a cross, generally a cross pattee. The seal of
William the Conqueror represents a crown surmounted by a mound.
Mullet or i^///.— Supposed by some writers to have had- its
176 HERALDRY, origin in the rowel of a spur ; but this can
scarcely be so, as the Mullet appears before the introduction of
spurs. It has five points, and is sometimes pierced or voided, but
when so, it is generally described as such. Some ancient writers
contend that the Mullet should invariably be pierced. The Mullet
must not be confused with the star^ which generally has six points.
The Mullet is one of the marks of cadency. Mullet is also a term for a
fish. Mural Crown. — A circle of gold embattled, borne sometimes as
a charge, but more generally as a crest. A mural crown often occurs
in arms granted to officers who have distinguished tliemselves in
sieges ; and it is intended to represent the ancient Roman distinction
for bravery in ascending the walls of a fortress. Muraille. — Covered
with a representation of masonry. Murrey or Sanguine. — A dark
brown colour. Muschetors. — Ermine, without the usual three black
spots. Naiant or Natant, applies to a fish swimming or set fesse-wise
on a shield. Naissant. — An animal rising or issuing from the middle
of an ordinary. Narcissus. — A flower of six petals, not unlike the
cinquefoil. Naiant. — See Naiant. Naval Crmvn. — A crown
composed of sails and stems of ships, placed alternately on a circle
or fillet. In the end of the past and the early part of this century, the
naval crown appears in numerous grants of arms for distinguished
maritime services. Nebuly or Nebulee. — A partition line running in
and out like the '* dovetail joint." Neptune. — Represented as half
man and half fish, holding a tridenf".
GLOSSARY.- 177 Nened. — Said of the fibres of Jeaves
when of a different tincture from the leaves. Nimbus. — The glory
round the head of a saint. Noblemen. — Dukes, Marquesses, Earls,
Viscounts, and Barons. Sir James Lawrence (" Nobility of the British
Gentry ") gives it a wider sense, and says, any one having armorial
bearings. Norroy. — One of the three Kings-of-Arms. Nouied. —
Twisted into a knot. Oak. — The emblem' of strength. Oak-trees and
branches are often borne as charges and crests. Obsidtonal Crcnvji.
— A garland formed of twigs and grasses. Of the Field. — The same
tincture as the field Of the First.— Oi the same tincture as that first
specified. Ogress. — See Pellet. Olive-tree. — The emblem of peace
and concord. Ombrk or Adumbrated. — A shadowed or outlined
charge. Ondee. — Wavy. Ongle. — Armed. On Degrees. — Said of a
cross placed on steps. Opinicus.—K fictitious heraldic being, half
dragon and half lion. Oppressed. — See Debruised. Or. — The metal
gold, represented in engravings by dots. Ordinaries. — The principal
bearings in coat armour. Oreiller. — A pillow or cushion. Orle. — One
of the subordinaries, a diminutive of the bordure, but detached from
the outer side of the shield. An orle of bezants should be eight
bezants in orle. Ostrich Feathers.— OnQ of the badges of Henry VI.
Three feathers are blazoned 2, plume (see also Flume). The tops of
ostrich feathers are always represented bending over. 12
178 HERALDRY. OUer.— The amphibious animal of this
name, often borne with a fish in his mouth. Over all or Stcr le tout.
— Said of a bearing surmounting or placed over others. Overt. —
Expanded, ready for flight. See Displayed. Owl. — The emblem of
wisdom, always borne full-faced. Ox-yoke. — The coupled collars
used when oxen are employed for hauling. Padlock. — Generally
borne of square form. Pale. — One of the ordinaries, consisting of a
band placed vertically in the middle of the shield. In pale is said of
charges when placed in the direction of a pale. A shield divided
down the middle is said to h^ parted per pale. Pale^vays. — Placed
in the direction of a pale, that is, set in a vertical positiort. Pall. — k
subordinary or a charge in form like the letter Y. The upper part of a
saltire conjoined to the lower part of a pale. It takes its name from
the archiepiscopal vestment worn by Archbishops. This charge is
borne in the arms of the archiepiscopal Sees of Canterbury, Armagh,
and Dublin. As a vestment, the Pall is a narrow circular band of
white larab's-wool, which is adjusted about the shoulders, and has
two similar bands hanging down from it, the one before and the
other behind. Pallet.— K diminutive of the pale, and of one-half its
width. Palmer's or Pilgrim's Staff.— A straight staff with a knob at the
top. With this is generally borne the palmer's scrip or bag. Paly.—
DWidQd by an equal number of vertical lines, the spaces alternately
of metal and colour. Paly Bendy.— VQy crossed by diagonal lines
from the dexter to the sinister.
GLOSSARY. 179 Panther. — Generally represented full-
faced. When with fire issuing from its mouth, it is blazoned incensed.
Papal Crown. — A red, mitre-shaped cap, encircled by three
Marquess' coronets, and surmounted by a mound and cross pattee.
Panache. — A plume of feathers, generally those of the peacock, set
upright, so as to form a crest. The Panache was almost always
regarded as a crest. (No. 255.) No. 255.— Panache. Crest of John,
Lord Scrope, K.G., from his Stall-Plate. Partition lines. — Lines
cutting or dividing the shield ; the direction of these lines
corresponds with the Ordinaries, as party per fesscj party per
bend^XhdX is, parted by a line running in the direction of a fesse, or
a bend. These lines are sometimes plain, and sometimes irregular.
Party or Parted. — Divided after the heraldic manner. Paschal Lamb
or Holy Lamb. — A white lamb, passant, represented as carrying the
banner of St. George. Pascuant. — Grazing. Passant. — Walking,
with head in profile. Passant Guardant. — Walking, with the face
affrontee, 12—2
[8o HERALDRY. Passant Reguardant. — Walking and
lookmg back. . Pastoral Staff. — Part of the insignia of the episcopal
office. It is a staff of metal, ivory, or wood, with a curved head or
crook. The Pastoral Staff is also borne by an Abbot, but the crook is
by him carried turned inwards; whereas by a Bishop it is carried
outwards. A vexillum^ or scarf, hangs from almost all
representations of the Pastoral Staff, encircling its shaft The Pastoral
Staff is borne in the arms of Westminster Abbey, &c., &c. *
Paternoster^ Pattee, Patonce, Patriarchal. — See Crosses. Paternal
Arms. — The original arms of a family. Patrick, St., Order of. — An
Order of Knighthood, established in 1783. It now consists of the
Sovereign, the Grand Master, and twenty-two knights. Pauldron. —
Armour to defend the shoulder. Paw, — The foot only, of an animal.
Pawne. — See Peacock. Peacock. — Borne in profile. When blazoned
in pride it is represented affrontCy and with its tail fanned, or spread
circularly. Pean. — One of the heraldic furs, similar to ermine, but
with a sable ground and gold spots. Pea-Pise. — Pea-stalk, having
leaves and flowers. Pearl. — The ancient term in Heraldry for white.
Peel. — A baker's wooden drawing-shovel. Peer. — The title given to
every nobleman of Great Britain. There are five degrees of Peerage,
viz., Dukes, Marquesses, Earls, Viscounts, and Barons. Pegasus. — A
rampant horse with wings. Pelican is represented with neck
embowed, wings endorsed, wounding her breast with her beak.
When feeding her young with her blood, she is blazoned in her piety.
GLOSSARY i8r Pelicaiis Head. — With this charge the neck
is represented embowed. Pellet or Ogress.— A black roundel. English
heralds alone give it this name. French and other heralds call all
roundels torteaiix. Tendent or Pendant. — Dropping or hanging from
the charge. Pemted. — Said of a feather, when the shaft or quill is of
a different tincture. Penner and Inkhorn. — An ancient pen and ink
holder (No. 256). No. 256, No. 257. Penno7i. — A small flag with
one or two points. In the middle ages the Pennon was carried by a
knight upon his lance, and it bore his badge or personal device. The
badge or charges were so placed, that they were in position when
the lance was held horizontally. Pennoncelle. — A small pennon. Per.
— By means of, or after the manner of Generally used before an
ordinary, to denote a partition of the field. Perelose.—K demi-garter.
Perforated. — See Pierced. Pheon. — The barbed head of a spear or
arrow, engrailed on the inner side. The point of the spear is placed
in base. (No. 257.) Phoenix. — A fabulous bird, represented issuant
from flames.
i82 HERALDRY, Pierced. — Perforated and showing the
field. When the shape of the aperture is not given, it is circular. Piety,
in her. — Said of the pelican when feeding her young with her blood.
Pike.—l!iQ. fish of this name, in Heraldry generally called luce. Pile.
— An ordinary in the shape of a wedge, issuing from the chief, and
tapering to a point in the middle base of the shield. Some heralds
class the Pile with the subordinaries. Pilgrim. — Represented with a
sleeved under-vest, and long outer robe with open sleeves ; a
broad-brimmed hat, ornamented with a shell ; on his feet sandals,
and in his hand a staff. Pily Bendy. — Divided ho^h pile-wise and
bend-wise. Planta-Genista. — The broom plant, the famous badge of
the Plantagenet family. This badge was assumed by Geoffrey
Plantagenet, Count of Anjou, the founder of the family. A sprig of the
broom is represented with its spike-like leaves, its golden blossoms,
and its pods, the latter sometimes open and disclosing their seeds.
Plate. — A silver roundel, represented flat; m foreign Heraldry
termed bezants argent. Semee of Plates is termed Plattee. Playing-
tables. — A backgammon table. Plentitude. — Said of the moon
when represented full. Plume of Feathers. — Until the end of the
fifteenth century these were generally set upright, in a conventional
manner, and afterwards they were waving plumes. Pods of Beans,
&c. — When used as charges, the pods are open, and show their
seed. Point. — A chevron-shaped charge, issuing from the base of
the shield, and tapering to the fesse point. It occurs in the arms of
Hanover (formerly part of the Royal arms of England).
GLOSSARY. 183 Points of a Label. — The pendants. Points
of the Shield.— Tq. parts denoting the position of any figure. (See
Chapter on Shields.) Pommelled, — Said of the round ball affixed to
the handle of a sword, when of a different tincture. No. 258
represents the Pommel of the sword-hilt that is sculptured with the
effigy of the Black Prince, at Canterbury, and which is charged with a
most spirited representation of a lion's face, the face of the true
heraldic lion. No, 25S.— Pommel of the Swokd-hilt of the Black
Prince, Canterbury Cathedral. Pomme. — A green roundel. Pommee.
— A form of cross. Popinjay.— K green parrot, with red legs and
beak. Porcupine. — Generally represented passant, with quills raised.
The family of Speechly or Speechle bear this for a crest. Port. — A
castle gateway. Pot. — A steel head-piece. Portcullis.— K frame or
grating formed of five vertical, and four horizontal bars. The lower
ends of the vertical bars are pointed ; in the upper angles are rings,
from which are suspended chains. The Portcullis was a device of
Henry VII., and was, and is now, one of the badges of the Neville
family. The Portcullis is also
1 84 HERALDRY. borne as a charge ; it appears in the arms
of Westminster City, &c. Portcullis is a title of one of the pursuivants
of the College of Arms. Potent. — The heraldic fur of this name.
Potentee, — One of the divisional lines, which is formed by a
succession of crutch-shaped figures. Pots are represented as three-
legged iron pots, or cauldrons. Pouldron. — See Pauldt'on.
Powdered, Semee, or Poudree. — Said of an indefinite number of
charges scattered or sprinkled over the field (No. 207, page 100).
Preene. — A cloth-dressing instrument. Premier. — A title used by
English heralds, to signify the most ancient creation of a Peer of any
degree. Prester or Presbyter John. — Represented as a mitred
Bishop seated on a tomb, his dexter hand extended, and in his
sinister a mound, and holding in his mouth a sword. Pretence, Shield
of, — A small shield pretended or placed in the centre, upon the face
of the shield. The arms of an heiress are generally borne on a small
shield of preteticc, and placed upon the shield of the husband.
Preying. — Devouring its prey. The family of Haynes, of Whittlesea,
Co. Cambs., bears for a crest an eagle preying on a tortoise. Pride,
In. — With spread tail. Primate. — The rank next below that of a
patriarch in the Church. In England, both our Archbishops are
Primates, one of England and the other of all England; but an
Archbishop is not necessarily a Primate. Prince. — A title now
generally applied to sons and grandsons of Kings and Emperors. In
England the term is now only applied
GLOSSARY. 185 to the Royal family. The title of Prince of
Wales is created by a special patent. Formerly the Bishops of
Durham were Princes and their mitres were surmounted with a
coronet. Strictly, in Heraldry, Dukes, Marquesses, and Earls are
Princes. Frivy Seal. — The seal attached to grants of minor
importance, and to more important ones which are afterwards to
pass the great seal. Proper. — The true or natural colour. Pryck-Spir.
— See Spur. Purfl^d. — Garnished. Said of the studs of armour
when of a different tincture from the armour itself. Purflew or
Purflen. — An old term to express the embroidery of a bordure of
fur. Purpure. — The colour purple. In engraving purpure is
represented by diagonal lines from the left to the right. It is of rare
occurrence in English Heraldry. Purse. — Represented as worn in the
middle ages suspended from the girdle. Pursuivant. — An officer of
the Herald's College of the third and lowest degree. Originally it was
an order of probation, and was an office from which the heralds and
Kings-of-Arms were made. There are in the College of Arms four
Pursuivants : Rouge Croix, Blue Mantle, Rouge Dragon, and
PortciUlis. Up to the time of Queen Elizabeth, the Pursuivants wore
their tabards having the sleeves hanging in front and behind, that
they might not be mistaken for heralds. In 1576 Rouge Croix was
censured for wearing his coat as a herald. The Pursuivant now wears
his coat as does a herald, but he is not entitled to the SS chain worn
by heralds. Pyot. — A magpie. Python. — A winged serpent.
1 86 HERALDRY. Quadrate. — Squared. Quarter. — One of
the ordinaries, or subordinaries, now superseded by the canton.
Quartered. — Divided. Quarterings. — The several coats marshalled
on one shield. Quartering was very little in use till the fifteenth
century. Quarterly. — Divided into four quarters , also, divided into
more than four sections, in which case the number is to be specified
in the blazon, as quarterly of six^ quarterly of eighty &c., &c.
Quarterly Quartered. — Is said of a saltire quartered in its centre,
and the four arms of which are each parted by two different
tinctures, alternately arranged. (See also page i8.) Quatrefoil. — A
four-leaved grass, formed of four curved leaves, and represented
without a stalk. Quatrefoil Slipped. — A quatrefoil having a stalk
attached to it. The quatrefoil is a very common charge in armorial
bearings. Queue. — The tail of an animal. Queue fourchee or
Double-Queue. — Having a forked tail (No. 259). No. aso— Arms op
Hesss Darmstadt. Az., a lion queue fourch6e ramf>t.. barry often
flrg. andgu. . crovmed or, and holding in his dexter paw a sword ppr.,
hilt and pommel or. Quill. — An instrument on which is wound yam,
gold thread, &c.
GLOSSARY. 187 It must be expressed in the blazon whether
the quill be filled or unfilled. Qidlled. — Used to denote the tincture
of the quills or feathers. Qiiintai7i. — A tilting post used in mediaeval
games. Qiiintcfoil. — See Cinqiie-foil. Quiver of Arrows. — A case
filled with arrows. Rack-pole beacon. — See Fire-beacon. Radiant. —
See Rayontik. Ragidy or Ragulee. — A line having serrated
projections. Rainbow. — Represented naturally, as issuing from
clouds. Ram. — The Ram, in Heraldry, is generally treated
conventionally. Abbot Ramryge, of St. Albans, assumed and bore
rams as his supporters, and in the Abbey of St. Albans some
beautiful sculptured examples of the heraldic Ram exist. Ra7n. —
See Battering-ram. Rampant. — Standing erect on the hind-legs ; a
term applied to the lion and other beasts of prey. One of the fore-
legs is represented elevated, and the head in profile. Rapier. —A
narrow stabbing sword. Ras'ee. — See Erased. Raping or Rapin. —
Preying. Raven. — The bird of this name. Borne by the family of
CORBETT. Rayonne or Radiant. ^llsLmg rays issuing from the edge
of the charge or ordinary. Rays. — When drawn round a figure of the
disc of the sun, heraldic Rays are sixteen in number, and tiiey are
akernately straight and wavy. Rebated. — Broken or cut off at the
point. Rebus.— In Heraldry a charge having an allusion to the liearer
s
1 88 HERALDRY. name. Devices or charges allusive to the
name of the bearer were very common in the middle ages. In
Westminster Abbey, Abbot IsLip's chapel gives two forms of his
Rebus — one a man falling from a tree, exclaiming, " I slip ; " the
other a human eye, and a small branch or slip of a tree.
Rec€7'cellee. — Curled. Reed. — See Stay. Reflected or Reflexed. —
Turned or bent backwards. Red Hand. — A sinister hand, erect,
open, and couped ; the arms of Ulster, and the distinguishing badge
of Baronets. Regalia. — The ensigns of royalty, dignity, or office,
more espethose of a coronation. The Regalia of England, before the
Reformation, was in the keeping of Westminster Abbey, and it is still
presented to the Sovereign, at the coronation, by the Dean.
Reguardant. — Looking back. Reindeer. — A stag with double attires.
Removed. — Out of its proper position. Respectant or Respecting. —
Two beasts (not of prey) rampant face to face. Rest. — See Clarion.
Retorted. — Intertwined frette-wise. Reversed. — A charge with the
upper part turned downwards. Riband. — A diminutive of the bend.
It is similar to a cotise, but is couped at the extremities. Rising or
Roussant. — Making ready for flight. Rompu. — Broken, or
interrupted. Rose. — In Heraldry the Rose is represented in a
conventional form, generally with ten leaves (No. 261), but
sometimes with only five (No. 260). When there are ten, five are
represented within or upon the outer five. The rose is never drawn
with a stalk, unless
GLOSSARY. 189 expressed in the blazon. As it is sometimes
gules, and sometimes argent, it is not blazoned /r^/ifr; but it is
often blazoned ^^ barbed and seeded proper^' and then the barbs
are to be represented green, and the seeds gold or yellow. The Red
Rose was the badge of the Plantagenets of the House of Lancaster,
and the White Rose that of York. An example of the heraldic Rose,
with foliage, occurs carved upon an oak bench-end, in the chancel of
Pulham, in Norfolk. The monument in Westminster Abbey to the
memory of Henry VH. is adorned with beautiful specimens of this
renowned historical badge. No. 260. No. 261. No. 262. Roses of York
and Lancaster. Rose-en-soleil.~ThQ rose argent of the House of
York, surrounded with rays, as of the sun (No. 262). Roiielle-Spur. —
See Spur. Rottge Croix. —The title of one of the pursuivants
belonging to the Enghsh College of Arms. The period of the
institution of Rouge Croix is not certain, but it is believed to be the
most ancient. The title is derived from the Red Cross of the patron
saint of England. Rouge Dragon. — The title of one of the pursux nts
of the College of Arms, founded by Henry VII. immediately before
his coronation. Henry VII. used a Red Dragon as one of his
supporters.
I90 HERALDRY, Routidel ox Koundlet.—K charge of a
circular form. Roundels have special indicative names, according to
their tinctures, viz. : a roundel or is blazoned a bezant ; a roundel ar.
a plate, &c., &c. In foreign Heraldry these distinctive names are not
given, neither are they in Scotch Heraldry. Fowei. — Part of a spur.
Euby.—ThQ ancient blazon {or gules or red. Rudder. — A badge of
the Lords Zouche. The tiller and stays are generally blazoned of a
different tincture. Rue, Chaplet or Wreath of. — A charge in the arms
of Saxony. It resembles a coronet placed bend-wise, and it is
sometimes blazoned a bend archee coronette, a coronet extended in
bend, or a bend treflee vert. On the continent it is blazoned a
crancelin (a small garland.) Rustre. — A pierced lozenge. Sable. —
Black ; represented in engraving by horizontal and vertical lines
crossing each other. Sacre. — See Saker. Sagittarius.— ^Qt Cefitaur.
Sail. — Sails are generally represented in Heraldry with a portion of
the mast before them. Saint George's £mign.— The distinguishing
flag of the British navy. It is the red cross of St. George upon a white
field, with a Union Jack in the dexter chief corner. Saint Andrew's
Cross. — See Saltire. Saker. — A kind of falcon. Salamander. — A
fabulous monster, generally depicted passant, surrounded by flames.
A golden Salamander is the crest of James, Earl Douglas, K.G., the
first Scottish noble who was elected into the Order of the Garter, and
who died a.d. 1483 ; this ani 
GLOSSARY. [91 mal is represented on the Garter-plate of
the Earl as breathing flames (No. 263). No. 263. Salient or Saliant.
In the act of springing. It is similar to rampant, but with two paws
up and two down. Solid. — A mediaeval metal helmet. Sail-cellars.—
-Cuips represented with salt falling from them. Salt-cellars are borne
in the arms of the Salters' Company. Saltire or Saltier. — One of the
honourable ordinaries. This is also called a St. Andrew's Cross. The
Saltire is formed by a bend dexter and a bend sinister crossing each
other, like the letter X. The Saltire contains one-fifth of the field, but
one-third when charged. Saltire-wise. — As a saltire. When two
swords or other charges are placed saltire-wise, the sinister is
generally placed uppermost. Saltorels. — Small saltires. Sandal or
Brogue. — A foot covering. Sanglant. — Stained with blood. Sanglier.
— The boar. Sanguine. — Murrey, or blood colour ; represented by
lines crossing each other saltire wise. This tincture is of rare
occurrence. Sa?is Nombre. — See Powdered. Sapphire. — The
ancient blazon for azure or blue.
192 HERALDRY. Saracen.— QtXitxzSiy represented
wreathed about the temples. Sarcellee. — Cut through the middle.
Saturn. — An ancient blazon for sable or black. Satyr.— K fabulous
monster composed of the lion and antelope, and having the face of
an old man Savage or Wild Man. — A man represented naked, or
with wreaths round the head and loins, and bearing a club in one
hand. Savages are frequently borne as supporters^ especially in
Scotch armoury. Scaled. — Said of a fish, when the scales differ in
tincture from the fish itself Scaling- Ladder. — A ladder having two
hooks at the upper end, and generally placed bend-wise on a shield.
The family of Grey bear the Scaling-Ladder for a crest (No. 264). No.
264. Scallop. — A kind of shell, supposed to have been introduced
into Heraldry by the pilgrims who bore it as a badge (see Escallop).
Scarf. — A small banner attached to a crozier. When borne as a
charge, tlie Scarf is generally represented in bend. Scarpe or
Escarpe. — A diminutive of the bend sinister, and onehalf its
breadth. Sceptre.— Pl staff; the symbol of Royal authority, and the
most ancient ensign of sovereignty.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
Let us accompany you on the journey of exploring knowledge and
personal growth!
ebookname.com

More Related Content

PDF
GitHub Actions in Action MEAP V03 Michael Kaufmann
marasnoskeu7
 
PDF
Learning GitHub Actions 1 / converted Edition Brent Laster
nojokojufri
 
PDF
Learning GitHub Actions 1 / converted Edition Brent Laster
gheibialle
 
PDF
Learning GitHub Actions: Automation and Integration of CI/CD with GitHub 1st ...
tulachwidhi
 
PDF
Learning Github Actions Automation And Integration Of Cicd With Github 1st Ed...
rzeczycozin
 
PDF
(Ebook) Learning GitHub Actions: Automation and Integration of CI/CD with Git...
dubuawinati96
 
PDF
Introduction to Github Actions
Knoldus Inc.
 
PDF
Introduction to Github Actions
Knoldus Inc.
 
GitHub Actions in Action MEAP V03 Michael Kaufmann
marasnoskeu7
 
Learning GitHub Actions 1 / converted Edition Brent Laster
nojokojufri
 
Learning GitHub Actions 1 / converted Edition Brent Laster
gheibialle
 
Learning GitHub Actions: Automation and Integration of CI/CD with GitHub 1st ...
tulachwidhi
 
Learning Github Actions Automation And Integration Of Cicd With Github 1st Ed...
rzeczycozin
 
(Ebook) Learning GitHub Actions: Automation and Integration of CI/CD with Git...
dubuawinati96
 
Introduction to Github Actions
Knoldus Inc.
 
Introduction to Github Actions
Knoldus Inc.
 

Similar to GitHub Actions in Action MEAP V03 Michael Kaufmann (20)

PDF
Buy GitHub Accounts (PVA) with Fast Delivery-1.pdf
jamedlimmk
 
PPTX
Git,github & terraform Basics: Introduction
ZakariyaMuhammudHass
 
PDF
How To Buy Old Git Hub Account A Complete Guide.pdf
jamedlimmk
 
PDF
Hands-on GitHub Actions 1st Edition Chaminda Chandrasekara
miledifulus
 
PDF
The (r)evolution of CI/CD on GitHub
Tom Mens
 
PPTX
Sample Presentation.pptx
ssuser9aed211
 
PDF
CI/CD with Github Actions
Md. Minhazul Haque
 
PPTX
GitHub Actions: your free CI engine (and much more)
Davide Benvegnù
 
PDF
Best 7 Easy Ways To Buy GitHub Accounts in Proven Project.pdf
jamedlimmk
 
PDF
Best 7 Easy Ways To Buy GitHub Accounts in Proven Project.pdf
jamedlimmk
 
PPTX
GITHUB_ACTIONS_CICD_OVERVIEW_FOR_BEGINNERS
Mithilesh Singh
 
PPTX
MuleSoft CI:CD Using GitHub Actions.pptx
Amit Singh
 
PDF
Europace's journey to InnerSource
Enrico Hartung
 
PDF
Buy GitHub Account with 5% discount now In 2025
bsmmpva
 
PDF
Top 1 Sites To Buy Github Accounts In 2025
ladyjexe
 
PDF
Buy GitHub Account- 100% Secure Guarantee
Buy Twitch Account
 
PDF
GitHubActionGitHubActionGitHubAction.pdf
namakamu231199
 
PDF
GitHub Vs GitLab | What Are The Major Difference?
GrapesTech Solutions
 
PDF
CICD_1670665418.pdf
edsonJeancarloRuedaS
 
PDF
Introduction to GitHub Actions - How to easily automate and integrate with Gi...
All Things Open
 
Buy GitHub Accounts (PVA) with Fast Delivery-1.pdf
jamedlimmk
 
Git,github & terraform Basics: Introduction
ZakariyaMuhammudHass
 
How To Buy Old Git Hub Account A Complete Guide.pdf
jamedlimmk
 
Hands-on GitHub Actions 1st Edition Chaminda Chandrasekara
miledifulus
 
The (r)evolution of CI/CD on GitHub
Tom Mens
 
Sample Presentation.pptx
ssuser9aed211
 
CI/CD with Github Actions
Md. Minhazul Haque
 
GitHub Actions: your free CI engine (and much more)
Davide Benvegnù
 
Best 7 Easy Ways To Buy GitHub Accounts in Proven Project.pdf
jamedlimmk
 
Best 7 Easy Ways To Buy GitHub Accounts in Proven Project.pdf
jamedlimmk
 
GITHUB_ACTIONS_CICD_OVERVIEW_FOR_BEGINNERS
Mithilesh Singh
 
MuleSoft CI:CD Using GitHub Actions.pptx
Amit Singh
 
Europace's journey to InnerSource
Enrico Hartung
 
Buy GitHub Account with 5% discount now In 2025
bsmmpva
 
Top 1 Sites To Buy Github Accounts In 2025
ladyjexe
 
Buy GitHub Account- 100% Secure Guarantee
Buy Twitch Account
 
GitHubActionGitHubActionGitHubAction.pdf
namakamu231199
 
GitHub Vs GitLab | What Are The Major Difference?
GrapesTech Solutions
 
CICD_1670665418.pdf
edsonJeancarloRuedaS
 
Introduction to GitHub Actions - How to easily automate and integrate with Gi...
All Things Open
 
Ad

Recently uploaded (20)

PPTX
Basics and rules of probability with real-life uses
ravatkaran694
 
PPTX
HEALTH CARE DELIVERY SYSTEM - UNIT 2 - GNM 3RD YEAR.pptx
Priyanshu Anand
 
PPTX
Gupta Art & Architecture Temple and Sculptures.pptx
Virag Sontakke
 
PDF
Health-The-Ultimate-Treasure (1).pdf/8th class science curiosity /samyans edu...
Sandeep Swamy
 
DOCX
SAROCES Action-Plan FOR ARAL PROGRAM IN DEPED
Levenmartlacuna1
 
PPTX
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
PPTX
BASICS IN COMPUTER APPLICATIONS - UNIT I
suganthim28
 
PPTX
Information Texts_Infographic on Forgetting Curve.pptx
Tata Sevilla
 
PPTX
PROTIEN ENERGY MALNUTRITION: NURSING MANAGEMENT.pptx
PRADEEP ABOTHU
 
PPTX
CARE OF UNCONSCIOUS PATIENTS .pptx
AneetaSharma15
 
PDF
Review of Related Literature & Studies.pdf
Thelma Villaflores
 
PDF
Biological Classification Class 11th NCERT CBSE NEET.pdf
NehaRohtagi1
 
PDF
The-Invisible-Living-World-Beyond-Our-Naked-Eye chapter 2.pdf/8th science cur...
Sandeep Swamy
 
PPTX
CONCEPT OF CHILD CARE. pptx
AneetaSharma15
 
PPTX
Artificial-Intelligence-in-Drug-Discovery by R D Jawarkar.pptx
Rahul Jawarkar
 
PDF
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
PPTX
CDH. pptx
AneetaSharma15
 
PPTX
Continental Accounting in Odoo 18 - Odoo Slides
Celine George
 
PPTX
An introduction to Dialogue writing.pptx
drsiddhantnagine
 
PPTX
Artificial Intelligence in Gastroentrology: Advancements and Future Presprec...
AyanHossain
 
Basics and rules of probability with real-life uses
ravatkaran694
 
HEALTH CARE DELIVERY SYSTEM - UNIT 2 - GNM 3RD YEAR.pptx
Priyanshu Anand
 
Gupta Art & Architecture Temple and Sculptures.pptx
Virag Sontakke
 
Health-The-Ultimate-Treasure (1).pdf/8th class science curiosity /samyans edu...
Sandeep Swamy
 
SAROCES Action-Plan FOR ARAL PROGRAM IN DEPED
Levenmartlacuna1
 
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
BASICS IN COMPUTER APPLICATIONS - UNIT I
suganthim28
 
Information Texts_Infographic on Forgetting Curve.pptx
Tata Sevilla
 
PROTIEN ENERGY MALNUTRITION: NURSING MANAGEMENT.pptx
PRADEEP ABOTHU
 
CARE OF UNCONSCIOUS PATIENTS .pptx
AneetaSharma15
 
Review of Related Literature & Studies.pdf
Thelma Villaflores
 
Biological Classification Class 11th NCERT CBSE NEET.pdf
NehaRohtagi1
 
The-Invisible-Living-World-Beyond-Our-Naked-Eye chapter 2.pdf/8th science cur...
Sandeep Swamy
 
CONCEPT OF CHILD CARE. pptx
AneetaSharma15
 
Artificial-Intelligence-in-Drug-Discovery by R D Jawarkar.pptx
Rahul Jawarkar
 
What is CFA?? Complete Guide to the Chartered Financial Analyst Program
sp4989653
 
CDH. pptx
AneetaSharma15
 
Continental Accounting in Odoo 18 - Odoo Slides
Celine George
 
An introduction to Dialogue writing.pptx
drsiddhantnagine
 
Artificial Intelligence in Gastroentrology: Advancements and Future Presprec...
AyanHossain
 
Ad

GitHub Actions in Action MEAP V03 Michael Kaufmann

  • 1. GitHub Actions in Action MEAP V03 Michael Kaufmann install download https://ebookname.com/product/github-actions-in-action- meap-v03-michael-kaufmann/ Get the full ebook with Bonus Features for a Better Reading Experience on ebookname.com
  • 2. Instant digital products (PDF, ePub, MOBI) available Download now and explore formats that suit you... Bootstrapping Microservices Second Edition With Docker Kubernetes GitHub Actions and Terraform Ashley Davis https://ebookname.com/product/bootstrapping-microservices-second- edition-with-docker-kubernetes-github-actions-and-terraform- ashley-davis/ Elementary Algebra 9th Edition Jerome E. Kaufmann https://ebookname.com/product/elementary-algebra-9th-edition- jerome-e-kaufmann/ Learn SQL in a Month of Lunches MEAP V13 Jeff Iannucci https://ebookname.com/product/learn-sql-in-a-month-of-lunches- meap-v13-jeff-iannucci/ Dialogue in Places of Learning Youth Amplified in South Africa 1st Edition Adam Cooper https://ebookname.com/product/dialogue-in-places-of-learning- youth-amplified-in-south-africa-1st-edition-adam-cooper/
  • 3. Anti Oppressive Practice Social Care and the Law 2nd Edition Jane Dalrymple https://ebookname.com/product/anti-oppressive-practice-social- care-and-the-law-2nd-edition-jane-dalrymple/ Enron Ascending The Forgotten Years 1984 1996 1st Edition Bradley https://ebookname.com/product/enron-ascending-the-forgotten- years-1984-1996-1st-edition-bradley/ Rommel s Afrika Korps El Agheila to El Alamein First Edition George R. Bradford https://ebookname.com/product/rommel-s-afrika-korps-el-agheila- to-el-alamein-first-edition-george-r-bradford/ Traditional Micronesian Societies Adaptation Integration and Political Organization 1st Edition Glenn Petersen https://ebookname.com/product/traditional-micronesian-societies- adaptation-integration-and-political-organization-1st-edition- glenn-petersen/ Food Farms and Solidarity French Farmers Challenge Industrial Agriculture and Genetically Modified Crops 1st Edition Chaia Heller https://ebookname.com/product/food-farms-and-solidarity-french- farmers-challenge-industrial-agriculture-and-genetically- modified-crops-1st-edition-chaia-heller/
  • 4. Electrodes for Li ion Batteries Materials Mechanisms and Performance 1. Aufl Edition Laure Monconduit https://ebookname.com/product/electrodes-for-li-ion-batteries- materials-mechanisms-and-performance-1-aufl-edition-laure- monconduit/
  • 7. GitHub Actions in Action 1. welcome 2. 1_Introduction_to_GitHub_Actions 3. 2_Hands-on:_My_first_Actions_Workflow 4. 3_Workflows 5. 4_GitHub_Actions 6. 5_Runners 7. 6_Self-hosted_runners 8. 7_Managing_your_self-hosted_runners 9. 8_Continuous_Integration_(CI)
  • 8. welcome Thank you for purchasing the MEAP for GitHub Actions in Action. We hope it will give you a kick-start into what is in our opinion the best and most flexible workflow platform for engineers. The book consists of three parts. Part 1 explains the basics of GitHub actions. It uses a practical, hands-on approach – but it covers all basics with simple examples. Part 2 explains the workflow runtime in depth. This knowledge will help you completely understand the platform's architecture and security considerations. Part 3 covers the whole topic of CI/CD – the main use case for GitHub Actions. This part contains more complex real-life examples. It also dives into security, compliance, and optimizing performance and costs. Please let us know your thoughts in the liveBook Discussion forum on what's been written so far [and what you'd like to see in the rest of the book]. Your feedback will be invaluable in improving GitHub Actions in Action. Thanks again for your interest and for purchasing the MEAP! —Michael Kaufmann, Rob Bos, Marcel de Vries In this book welcome 1 Introduction to GitHub Actions 2 Hands-on: My first Actions Workflow 3 Workflows 4 GitHub Actions 5 Runners 6 Self-hosted runners 7 Managing your self-hosted runners 8 Continuous Integration (CI)
  • 9. 1 Introduction to GitHub Actions This chapter covers the following topics Getting an introduction to the GitHub universe Understanding what GitHub Actions and Workflows are Learning about the possibilities of GitHub Actions that go beyond CI/CD pipelines Understanding licenses and pricing for GitHub and GitHub Actions GitHub is more than just a platform for hosting and sharing code. It has become the beating heart of the open-source community, with millions of developers from all over the world collaborating on projects of every type and size. Founded in 2008, GitHub has since grown to host over 200 million repositories and 100 million users, with a staggering 3.5 billion contributions made in the last year alone. And now, with GitHub Actions, developers have access to a powerful and flexible toolset for automating their workflows, from Continuous Integration (CI) and Continuous Deployment (CD) to custom automation tasks and beyond. GitHub Actions is much more than just a CI/CD tool – it's a comprehensive automation platform that can help streamline your entire development workflow. This book will show you how to make the most of GitHub Actions and take your development process to the next level. It is for everyone that wants to learn more about GitHub Actions – from complete beginners to already advanced users that want to bring their knowledge to the next level. You will learn how to use Actions effectively and secure, and it brings a lot of real- world examples for using it for CI/CD scenarios. 1.1 An introduction to the GitHub universe At the core of GitHub lies the essential component of version control, namely git. This system has played a significant role in transforming the way in
  • 10. which software is developed and is widely considered the standard for the versioning of code, which in this case does not just refer to program code. It includes infrastructure, configuration, documentation, and many other types of files. Git has risen to prominence due to its remarkable flexibility, which stems from its classification as a distributed version control system rather than a central one. As a result, developers can work while disconnected from the central repository, utilizing the full functionality of the version control system, and later synchronize changes with another repository. The efficacy of git's distributed architecture is attributed to its ability to store snapshots of files with changes in its database. GitHub has extended beyond its function as a hosting platform for git and has evolved into a comprehensive DevOps platform that supports collaborative coding through asynchronous means, such as pull requests and issues. The platform's capabilities have expanded into six broad categories, which include: collaborative coding, planning and tracking, workflows and CI/CD, developer productivity, client applications, and security. These categories encapsulate the key features that GitHub offers, making it a versatile and comprehensive DevOps platform that supports various stages of software development. From its inception, GitHub has prioritized a developer-centric approach, resulting in a platform that places utmost importance on webhooks and APIs. Developers can leverage either the REST API or the graph API to manipulate all aspects of the GitHub platform. Authentication is also a straightforward process, and developers can use GitHub as an identity provider to access their applications. This user-friendly approach facilitates seamless integration with other tools and platforms, making GitHub a versatile option not only for open-source projects but also for commercial products. GitHub's extensive ecosystem, which boasts over 100 million users, comprises the entire open- source community, who collaborate to expand and enrich its functionality.
  • 11. So, to understand the vastness of the GitHub ecosystem, one must also take into account the various integrations available: Planning and tracking: In addition to issues and milestones, GitHub offers GitHub Discussions, an entire forum for collaboration on ideas. Furthermore, GitHub Projects is a flexible planning solution that is fully integrated with issues and pull requests, and it supports nested backlogs, boards, and roadmaps. Moreover, GitHub integrates seamlessly with other popular planning and tracking solutions such as Azure Boards and Jira. Client applications: GitHub provides a fully-featured code editor that can be accessed directly in the browser. It also offers mobile applications for both iOS and Android platforms, enabling teams to collaborate from anywhere. Additionally, there is a cross-platform desktop application and an extensible CLI available. Furthermore, GitHub integrates smoothly with popular client applications such as Visual Studio, Visual Studio Code, and Eclipse. Moreover, it seamlessly integrates with popular chat platforms such as Slack and Teams. Security: GitHub provides a comprehensive solution for ensuring software supply-chain security, which includes several key features. For example, it generates Software Bills of Material (SBoMs) to keep track of all the components that are included in your software. And, with the Dependabot functionality, GitHub can alert you whenever vulnerabilities are detected in any of the dependencies you're using. Furthermore, GitHub can scan your repository to detect secrets, and it boasts a sophisticated code analysis engine called CodeQL. The platform also supports integrations with other security tools like Snyk, Veracode, or Checkmarx, and it can be integrated into Microsoft’s Defender for DevOps. Developer Productivity: In GitHub, developers can quickly create a customized containerized development environment using GitHub Codespaces. This allows new developers to be productive right away. Additionally, Copilot, an AI-powered assistant, can generate code based on the context of comments or other code. This can significantly increase productivity, with reports of up to 50% gains. GitHub also offers code search, the command palette, and other features that can further enhance developer productivity.
  • 12. Workflows and CI/CD: In the world of continuous integration and continuous delivery (CI/CD), GitHub is a popular platform that enjoys widespread support from most CI/CD tools in the market. Furthermore, GitHub provides a secure integration with all the major cloud providers for CI/CD workflows using Open ID Connect (OIDC). This ensures a secure and streamlined experience for developers who rely on cloud- based services. Additionally, GitHub Packages is equipped with a robust package registry that supports a wide range of package formats, providing a powerful and versatile tool for developers to manage and distribute their code packages. GitHub Actions serves as the automation engine for the GitHub ecosystem (see Figure 1.1). It allows users to automate various tasks, with a vast library of over 18,000 actions available in the marketplace. From issue triaging to automatic documentation generation, there is a building block – called Action – available to address nearly any task. With GitHub Actions, users can easily and securely automate their workflows. Figure 1.1 The GitHub ecosystem has thousands of integrations
  • 13. That’s why GitHub Actions is more than just CI/CD. It is an automation engine that can be used to automate any kind of manual tasks in engineering, and it is already used by millions of developers worldwide. It can be used to not only automate GitHub – but the entire GitHub Universe. 1.2 What are GitHub Actions and Workflows GitHub Actions is both the name of the workflow engine and the name of an individual, reusable, and easily sharable workflow step within GitHub. This can lead to confusion. Workflows are composed of YAML files that are stored in a specific repository location (.github/workflows). In Chapter 3, GitHub Action Workflows, you will gain a comprehensive understanding of GitHub Action workflows and the YAML syntax. Triggers initiate the workflow, and one or more jobs are included in the workflow. Jobs are executed on a workflow runner, which can be a machine or container with an installed runner service. GitHub offers runners with Linux, macOS, and Windows operating systems in various machine sizes, but you can also host
  • 14. your own runners. In Part 2, Workflow Runtime, you will learn about runners and the essential security measures to consider when hosting your own runners. Jobs execute in parallel by default, but the needs property can be used to chain jobs together. This enables you to fan out your workflow and run multiple jobs in parallel while waiting for all parallel jobs to complete before proceeding. Environments in GitHub Actions provide a way to protect jobs by defining protection rules such as manual approvals, wait timers, and protected secrets. With this, you can create visual workflows that track for example your entire release pipeline, giving you complete control over your deployment process. Please refer to Figure 1.2 for an example of a workflow with environments and approvals. Figure 1.2 A GitHub Workflow with environments and approvals A job is comprised of one or more steps that are executed sequentially. A step can take the form of a command line, script, or reusable step that is easily shareable, known as a GitHub Action. These Actions can be authored in JavaScript or TypeScript and executed in a NodeJS environment. Additionally, it is possible to run containers as Actions or create composite Actions that serve as a wrapper for one or multiple other Actions. Actions are covered in more depth in Chapter 4, GitHub Actions. In Figure 1.3 you can see an overview of the basic elements that make up a workflow and their syntax.
  • 15. Figure 1.3 The basic syntax and elements that make up a GitHub Actions workflow You will learn more about workflow syntax, YAML, GitHub Actions, and authoring and debugging workflows and Actions in Chapter 3, GitHub Action Workflows, and in Chapter 4, GitHub Actions. 1.3 GitHub Actions - More than CI/CD pipelines GitHub workflows are intended to automate various tasks. In addition to pushing code, there are numerous triggers available. A workflow can be activated when a label is added to an issue, when a pull request is opened, or when a repository is starred. In Listing 1.1 you can find an example workflow that applies labels to opened or edited issues based on the content of the body of the issue. Listing 1.1 A sample GitHub Actions workflow that can help triage GitHub issues name: Issue triage on: issues: types: [opened, edited] jobs:
  • 16. triage: runs-on: ubuntu-latest steps: - name: Label issue run: | if (contains(github.event.issue.body, 'bug')) { echo '::add-labels: bug'; } else if (contains(github.event.issue.body, 'feature')) { echo '::add-labels: feature'; } else { echo 'Labeling issue as needs-triage'; echo '::add-labels: needs-triage'; } This is just an example to show you the power of GitHub actions. GitHub does not automatically download or clone your repository when a workflow is executed. In many automation scenarios, the repository's code or files may not be required, and the workflow can be completed much faster without cloning the repository. If you intend to utilize GitHub Actions for CI/CD purposes, the first step in a job should be to download the code by utilizing the checkout action.: steps: - name: Checkout repository uses: actions/checkout@v3 This action will clone your repository, allowing you to build and test your solution. In Part 3, CI/CD with GitHub Actions, you will learn in depth how to use GitHub Actions for CI/CD in a secure and compliant way. 1.4 Hosting and pricing for GitHub and GitHub Actions GitHub (https://github.com) is hosted in data centers located in the United States. Signing up for GitHub is free and provides users with unlimited private and public repositories. While many features on GitHub are available for free on open-source projects, they may not be available for private
  • 17. repositories. Enterprises have a variety of options for hosting GitHub (see Figure 1.4). Figure 1.4 GitHub Enterprise Cloud, GitHub Enterprise Server, and GitHub Connect 1.4.1 GitHub Enterprise Cloud GitHub Enterprise Cloud (GHEC) is a Software as a Service (SaaS) offering from GitHub, and it is fully hosted on its cloud infrastructure in the United States. GHEC provides additional security features and supports single sign-on for users. With GHCE, users can host private and public repositories, including open-source projects within their enterprise environment. GHEC guarantees a monthly uptime Service Level Agreement (SLA) of 99.9%, which translates to a maximum downtime of 45 minutes per month. 1.4.2 GitHub Enterprise Server The GitHub Enterprise Server (GHES) is a system that can be hosted
  • 18. anywhere, either in a private data center or in a cloud environment like Azure, AWS, or GCP. Using GitHub Connect, it is possible to connect to GitHub.com, which enables the sharing of licenses and the use of open source on the server. GHES is based on the same source as GHEC, which means that all features eventually become available on the server a few months later. However, some features provided in the cloud must be managed independently on GHES. For instance, runners in GitHub Actions require self-hosted solutions, whereas the cloud provides GitHub-hosted runners. Managed Services are also available that provide hosting for GHES, including in an Azure data center within the user's region. This approach ensures full data residency and eliminates the need to manage the servers personally. Some Managed Services also include hosting for managed GitHub Actions runners. 1.4.3 Pricing for GitHub It is important to Understand the pricing model of GitHub and GitHub Actions when you start playing around with them, to not accidently burn though all you free minutes. GitHub's pricing model is based on a monthly per-user billing system and consists of three tiers: Free, Team, and Enterprise (see Figure 1.5). Figure 1.5 Overview of GitHub pricing triers
  • 19. Public repositories, and therefore open-source projects, are entirely free of charge and offer many features such as Actions, Packages, and various security features. Private repositories are also available for free, but with limited functionality, including 2,000 Action minutes and 500 MB of storage per month. To collaborate on private repositories with advanced features such as protected branches, codeowners, and enhanced pull request features, a team license is required. This license also includes access to Codespaces, although this feature requires a separate payment. Additionally, the team tier provides 3,000 free Action minutes per month and 2GB of monthly storage for packages. Free and Team tiers are only available on GitHub.com. If users require GitHub Enterprise Cloud or Server, the GitHub enterprise license must be purchased. This license includes all enterprise features, such as single sign- on, user management, auditing, and policies, along with 50,000 Action minutes and 50GB of storage for packages per month. It also allows for the purchase of additional add-ons, such as Advanced Security or Premium Support. 1.4.4 Pricing for GitHub Actions Hosted runners are provided for free to users with public repositories. The amount of storage and monthly build minutes available to users depends on
  • 20. their GitHub edition, as shown in Table 1.1: Table 1.1 Included storage and minutes for the different GitHub editions GitHub edition Storage Minutes Max concurrent jobs GitHub Free 500 MB 2,000 20 (5 for macOS) GitHub Pro 1 GB 3,000 40 (5 for macOS) GitHub Free for organizations 500 MB 2,000 20 (5 for macOS) GitHub Team 2 GB 3,000 60 (5 for macOS) GitHub Enterprise Cloud 50 GB 50,000 180 (50 for macOS) If you have purchased GitHub Enterprise through your Microsoft Enterprise Agreement, it is possible to link your Azure Subscription ID to your GitHub Enterprise account. This will allow you to use Azure Billing to pay for additional GitHub Actions usage beyond what is already included in your GitHub edition. It is important to note that jobs running on Windows and macOS runners consume more build minutes than those running on Linux. Windows consumes build minutes at a rate of 2x and macOS consumes build minutes at a rate of 10x, meaning that using 1,000 Windows minutes would use up 2,000 of the minutes included in your account, while using 1,000 macOS minutes would use up 10,000 minutes included in your account. This is due to the higher cost of build minutes on these operating systems. Users can pay for additional build minutes on top of what is included in their GitHub edition, with the following build minute costs for each operating system: Linux: $0.008 macOS: $0.08 Windows: $0.016 These prices are for the standard machines with 2 cores. The charges for extra storage are uniform for all runners, set at $0.25 per GB.
  • 21. In Chapter 5, Runners, you will learn in more detail, how minutes and extra storage are calculated. If you are a customer who is billed monthly, your account is subject to a default spending limit of $0 (USD), which restricts the use of extra storage or build minutes. However, if you pay by invoice, your account is given an unrestricted spending limit by default. If you set a spending limit above $0, any additional storage or minutes utilized beyond the included amounts in your account will be invoiced until the spending limit is reached. By setting up a spending limit, the Enterprise Administrators will receive e-mail notifications at reaching 75%, 90%, and 100% of the spending limit, on top of the default notifications for utilizing the same percentages of the included minutes in their monthly plan. You won't incur any costs when using self-hosted runners since you provide your own computing resources. It is important that you are aware of the costs when playing around with workflows. Especially if you try certain triggers. Best is to just use public repos for training purposes – in this case the workflows are free of charge in any case. 1.5 Conclusion In this chapter, you have learned about the GitHub ecosystem and the myriad of possibilities it offers for automating tasks, extending beyond just CI/CD, using GitHub Actions. You have become familiar with key terms and concepts related to Workflows and Actions, enabling you to better navigate and utilize these features. Additionally, you have explored the hosting options and pricing models available for both GitHub and GitHub Actions. Moving forward, the next chapter will provide an opportunity for practical application, as you embark on writing your first workflow. This initial exercise will serve as a useful foundation before delving further into the syntax and nuances of GitHub Action Workflows, which will be covered in Chapter 3.
  • 22. 1.6 Summary The GitHub universe consists of a vast ecosystem of products, partners, and communities around the areas of collaborative coding, planning, and tracking, workflows and CI/CD, developer productivity, client applications, and security. GitHub Actions is a workflow engine to automate any kind of manual tasks in engineering in the GitHub ecosystem beyond CI/CD. GitHub Action workflows are YAML files in a repository in the folder .github/workflows and contain triggers, jobs, and steps. A GitHub Action is reusable workflow step that can be easily shared through the GitHub marketplace. GitHub Actions are free for public repositories and paid per minute for private ones if you use the GitHub hosted runners; but you have free included Actions minutes in all GitHub pricing tears. Private runners are always free – but the pricing for hosted runners varies depending on the machine size and type.
  • 23. 2 Hands-on: My first Actions Workflow This chapter covers the following topics Creating a new workflow Using the workflow editor Using actions from the marketplace Running the workflow Before we dive into the details of the workflow and YAML syntax in Chapter 3, GitHub Workflows, it’s a good idea to familiarize ourselves with the workflow editor, gain some practical experience in creating a workflow, and test it out to see it in action. This hands-on approach will help us better understand the concepts and give us the ability to quickly try something out, if it is unclear. Don’t worry if there are parts of the workflow syntax that you don’t understand yet– we’ll be covering those in detail in the upcoming chapters. 2.1 Creating a new workflow Let's begin this hands-on lab by signing into your GitHub account. Then, follow the link https://github.com/new to create a new repository. To ensure you have unlimited Action minutes, create a new public repository in your user profile and name it ActionInAction. Initialize the repository with a readme so that we can retrieve the files in the workflow later on. Lastly, click on the Create repository button to complete the process (refer to Figure 2.1). Figure 2.1 Creating a new repository
  • 24. The repository You can find companion repositories in the GitHub Organization https://github.com/GitHubActionsInAction If you have already cloned the companion repository https://github.com/GitHubActionsInAction/Part1, you can also create a new workflow in this repository instead of creating a new one. Now, let's navigate to the Actions tab inside the repository. If this is a new repository and there are no workflows set up yet, you will automatically be redirected to the new Action page (Actions/new). This is the same page you
  • 25. would land on if you clicked the New workflow button in the workflow overview page, which is displayed if there are workflows in the repository. The new workflow page presents a plethora of templates for different languages and scenarios. You can certainly explore these available templates, but for our first workflow, we want to create the workflow ourselves. To proceed, simply click on the corresponding link as illustrated in Figure 2.2. Figure 2.2 Set up a new workflow in the workflow editor An empty workflow will be created and opened in the workflow editor. 2.2 Using the workflow editor It's worth noting that a workflow is essentially a YAML file that resides in the folder .github/workflows. You can modify the filename as necessary from the top of the editor window. On the right side of the editor, you'll find the marketplace as well as the workflow documentation. The documentation provides valuable guidance to get you started. Moreover, the editor supports auto-complete when you use the Ctrl+Space keyboard shortcut. To give you a better idea of the key components of the editor, please refer to Figure 2.3.
  • 26. Figure 2.3 The workflow editor To begin, let's change the filename of the workflow file to MyFirstWorkflow.yml. Once that's done, click into the editor and open the auto-complete using Ctrl+Space. From the list of valid elements, choose name. The auto-complete feature will automatically add name: including the correct spacing to the file. Next, name the workflow My First Workflow and hit enter to start a new line. Now, let's add triggers that will initiate the workflow. Begin a new line and press Ctrl+Space once again. From the options presented, select on and then push. Auto-complete will generate the following line, which will start the workflow upon any push in any branch: on: [push] Suppose you want to trigger the workflow from only certain branches. In that case, you need to add additional parameters to the push trigger. First, delete the [push] and press enter to start a new line. Use the tab key to get the correct indentation. Next, press Ctrl+Space again, select push, and notice how auto-complete now functions differently. It will automatically create a
  • 27. new line and offer all the available options for the push trigger. From there, choose branches and add the main branch, as shown in the documentation. Create a new line with the same indentation as the push trigger and add a workflow_dispatch trigger, which will enable you to trigger the workflow manually. At this point, your workflow should resemble the one depicted in Figure 2.4. Figure 2.4 Naming the workflow and adding triggers To add a job to the workflow, create a new line in the workflow file with no indentation (same as name and on). Use auto-complete to write jobs: and move to the next line. Note that auto-complete won't work here, as the name of the job is expected. Enter MyFirstJob:, press enter to start a new line, and tab to indent one level. Auto-complete should work again now. Choose runs- on and enter ubuntu-latest, which will execute the job on the latest Ubuntu machine hosted by GitHub. Next, add a step to the job. If you choose steps from auto-complete, it will insert a small snippet with a YAML array that you can use to enter your first step. For example, you can output Hello World to the console using run and echo (see Listing 2.1).
  • 28. Listing 2.1 The first step outputs Hello World to the console jobs: MyFirstJob: runs-on: ubuntu-latest steps: - run: echo " Hello World!" Error checking in the editor It's important to note that if there are errors in your workflow file, the editor will mark the corresponding parts and you can hover over it with the mouse to get additional information and other suggestions (see Figure 2.5). The editor will highlight structural errors, unexpected values, or even conflicting values, such as an invalid shell value for the chosen operating system. Figure 2.5 Editor highlighting errors in the file and providing suggestions In the next step we will add a GitHub Action from the marketplace. 2.3 Using actions from the marketplace In the right pane, next to documentation, you can find the marketplace for GitHub Actions. To locate the Checkout action from GitHub Actions, start by typing checkout in the search bar (see Figure 2.6). Please note that the author of the Action is not GitHub, but actions, and that it has a blue badge with a checkmark, indicating that the author is a verified creator. Figure 2.6 Searching in the marketplace from within the editor
  • 29. If you click on the marketplace listing, you will be taken to a page with more details about the action. You can also copy the template using the copy button (see Figure 2.7) or copy parts of the YAML code snippet provided in the Installation section. The parameters for the action are under the with: property. They are all optional, so you can delete them all or just copy over name: and uses:. Paste the action as a step to the workflow like illustrated in Figure 2.7. Figure 2.7 Adding the action from the marketplace to the workflow As a last step, we add a script that displays the files in the repository using the tree command. Use the name property to set the name that is displayed in the workflow log. In this step we use a multi-line script using the pipe
  • 30. operator | and a two-blank indentation for the script. In the first line we output the name of the repository. We use an expression for that. We then use the tree command to output the files in the repository (see Listing 2.2): Listing 2.2 Run a multiline script to display all files in the repository - name: List files in repository run: | echo "The repository ${{ github.repository }} contains the following fil tree If the editor does not indicate any errors, commit the workflow now to your main branch (see Figure 2.8). Figure 2.8 Committing the new workflow file This will automatically trigger a workflow run because of the push trigger. 2.4 Running the workflow The workflow will start automatically because of the push trigger on the main branch. To observe the workflow run, navigate to the Actions tab (see Figure 2.9). In the case of a push trigger, the name of the workflow run corresponds
  • 31. to the commit message. Additionally, you can view the branch on which the workflow was executed, as well as the time and duration of the run. Clicking on the workflow run will provide you with more detailed information. Figure 2.9 The workflow runs in the Action tab Within the workflow run overview page, you will come across a detail pane situated at the top, providing information about the trigger, status, and duration of the workflow. On the left-hand side, you will find a list displaying the jobs, while the workflow designer is located in the center (see Figure 2.10). Clicking on a specific job will redirect you to the corresponding job details page. Figure 2.10 The workflow run overview On the job details page, you will discover a log that allows you to track the progress of the running workflow. Each step within the workflow has its own collapsible section for easy navigation. Additionally, you will notice an additional Set up job section, providing additional details about the runner image, operating system, installed software, and workflow permissions.
  • 32. Each line in the workflow log is equipped with a deep link, enabling you to directly access a specific line within the log. In the top-right corner, you will find a settings menu where you can choose to display timestamps in the log or download the entire log for further analysis (see Figure 2.11). Figure 2.11 The job details containing the workflow run log With the inclusion of the workflow_dispatch trigger in your workflow, you now have the ability to manually run the workflow. To initiate the workflow manually, return to the Actions tab and select the workflow from the left- hand side, as illustrated in Figure 2.12. Once selected, you will encounter a Run workflow menu that you can utilize to trigger the workflow. Figure 2.12 Triggering a workflow manually
  • 33. While the workflow is starting, go to the workflow overview page and the job details page to observe the workflow in real time. 2.5 Conclusion In this chapter, you have familiarized yourself with the workflow editor and have gained practical experience in creating and executing a workflow. You have also explored the documentation and incorporated a GitHub Action from the marketplace. In the upcoming chapter, you will delve into the intricacies of YAML and workflow syntax. The chapter will provide comprehensive insights into advanced concepts, including expressions and workflow commands. 2.6 Summary New workflows are created under Actions/new. The workflow editor contains documentation and the marketplace. The workflow editor helps you writing the workflow with syntax- highlighting, auto-complete, and error checking. You can simply copy and paste actions from the marketplace into you workflow to use them. The workflow has a live-log with deep-linking that provides all the information for the workflow run.
  • 34. 3 Workflows This chapter covers the following topics Understanding YAML and the YAML syntax Learning the basics of the workflow syntax Understanding workflow triggers, expressions, and contexts Getting an introduction into advanced workflow concepts like workflow commands Learning best practices for authoring and debugging workflows Now that you have gained the first practical experience, it is time to fully understand the syntax for workflows. Workflows are written in YAML. That’s why it is really important to fully understand YAML before writing workflows. 3.1 YAML YAML stands for YAML Ain't Markup Language and is a data-serialization language optimized to be directly writable and readable by humans. It is a strict superset of JSON but with syntactically relevant newlines and indentation instead of braces. In the next sections we go through all the YAML elements that are important for writing workflows. 3.1.1 YAML Basics YAML files are text files and have a .yml or .yaml extension. Because YAML uses indentation instead of braces these text files can be versioned very well with git as changes are always per line. YAML files can have different encodings – but GitHub uses UTF-8 for the workflows. You can write comments in YAML by prefixing text with a hash (#):
  • 35. Exploring the Variety of Random Documents with Different Content
  • 36. 1 68 HERALDRY. Lines of Partition are the various dividing and border lines, in addition to simple right lines and curves. These are illustrated in another part of this work. Lion. — A Royal symbol. In Heraldry, the king of beasts. See chapter on the Heraldry of the Lion. Lion^ Demi. — In a "demi-lion" the tail, although separate from the body, is represented. Lion's fambe or Gambe. — The whole fore-leg of a lion. Lioficels. — A field of lions. A term used when more than three lions occur on a shield. Lined. — Having cords or chains attached ; also having an inside lining. Lists. — Enclosed spaces for holding tournaments. Livery Colours. — Colours adopted by families for the dress of their servants ; these should properly be of the chief colours of the family arms. Colours were originally adopted by certain eminent personages for various decorative uses : as scarlet and white, by the Plantagenets ; blue and white, by the Lancastrians ; blue and crimson, by the House of York : white and green, by the Tudors, &c., &c. Lizard, — A beast resembling a wild cat. Lizard. — The reptiles of this name are generally blazoned vert. Lobster. — Always represented with claws in chief, Lochabar Axe, — An axe with a broad blade and long handle. Lodged.— K term applied to a stag, or other beast of the chase, as couchant applies to the lion. Lozenge, — A four-sided diamond-shaped figure. Z^jsr^-//^.— Covered with or composed of lozenges; that is, a field divided by diagonal lines crossing at intervals, and forming a diamond pattern.
  • 37. GLOSSARY. 169 Luce. — The fish called a pike. In the first scene of Shakspeare's " Merry Wives of Windsor," Slender says : " They may give the dozen white luces in their coat.^^ The "dozen white luces" apply to the arms of the Lucy family. (No. 242 is the seal of Sir Thomas Lucy, of Charlecote .; . —three white luces interlaced.) r^^m^cc^ (^^ Luna. — The ancient blazon for argent. Lure. — See HawJH s-lure. Lyinphad. — An ancient galley, with one mast, and a sail furled, and propelled by oars. This charge is borne by the Lords of Lorne. Lyon. — The King-of-Arms for Scotland, whose title is derived from the lion in the Royal shield. Originally he was styled Lord Lyon. NiSBET says he has precedence of all knights and gentlemen other than State offi- '^^^ ^''^' cers. Lyon ranks next to Garter. Lyo7i Court. — The Herald's Court presided over by Lyon, and composed of six Heralds and six Pursuivants. Mace. — An ensign of authority ; originally a spiked metalheaded staff. Macers. — Officers of the Supreme Courts in Scotland. Maideiis Head. — The head, neck, and shoulders of a woman, generally crowned and wreathed. Katherine Parr had for a badge a maiden^ s head, rising from a large Tudor rose. Maintenance, Cap of. — See Cap of Maintenance. Sir John Fearne says : ''The wearing of the cap had a beginning from the duke or general of an army, who, having gotten victory, caused the chiefest of the subdued enemies, whom he led, to follow him in his triumph, bearing his cap after him, in token of subjection and captivity."
  • 38. I70 HERALDRY. Male Gryphon, — See Griffin. Maltese Cross. — A cross having eight points. The Maltese Cross is worn as a decoration by several Orders of Knighthood. Manacles or Shackles. — Ancient handcuffs. Manch. — See Maunche. Maned. — Said of an animal when the mane differs in tincture from the body. Maris Heady is variously represented, viz., in profile, affronte, &c., &c. Mantle. — A long and flowing robe, worn in the middle ages over the armour. The mantle also constitutes an important part of the official insignia of the Knightly Orders. Mantle of Ladies. — A garment worn in the middle ages by ladies of rank. These were often decorated with heraldic charges, generally the impaled arms of the lady and her husband. Mantling. — The decorative ornament attached to the helmet, and hanging down behind the escutcheon in an achievement. It is sometimes intended to represent the mantle or robe of estate, and then the arms or bearings of the shield are generally embroidered on it j but when it represents the scarf called the cointise, or contoise, it is depicted as ragged, with the torn ends twisted into ornamental scrolls. It is not clear whether the cointise and contoise did not refer to two different scarfs — the former to that worn round the waist and over the shoulder, and the latter to that attached to the helm. Man-Tiger.-^K fabulous heraldic monster, with the body of a lion and the head of a man, having horns on the head. Marcassin. — A young wild boar, represented as having its tail hanging down. Mark of Cadency. — That heraldic distinction of the several
  • 39. GLOSSARY. 171 members of the same family, or of the collateral branches of the same house, which is indicated by some device specially adopted and borne for that purpose. Marquess. — The second rank in the British Peerage. This title was originally given to commanders on the sea-coast or frontiers of countries, but in the time of Richard II. it became honorary. Marquess' Coronet, is formed of a circle or band of gold, with four strawberry or oak-leaves, with as many pearls alternating, slightly raised on pyramidal points. In representations two of the pearls and three of the leaves are seen. The cap is of crimson velvet, with a golden tassel, and guarded with ermine. Marshal of Efigland. — See Earl Marshal. Marshalling. — The disposition and arrangement of heraldic compositions. Marshalling is more fully explained in another part of this work. Mars. — The ancient blazon for gules or red. Martel. — See Hanifner. Martlet. — The heraldic swallow, always represented without legs and with long wings. In the early representations it is represented with legs. In cadency, the Martlet is the difference of the fourth son. Mascle. — A lozenge voided or perforated. In early Heraldry the lozenge and mascle were probably one. Masaily. — Composed of mascles. A shield divided into lozengeshaped compartments, having the centres voided, and of alternate tinctures. Masoned. — Said of a castle, &c., when the divisional lines of the brickwork or stonework are represented. Master of Ceref?iomes. — An office originally instituted for the reception of distinguished persons at the Court of England. It
  • 40. 17: HERALDRY. is now extended to the president or regulator of ordinary assemblies. Maiimhe. — A sleeve, having long hanging ends, worn about the time of Henry I. by EngUsh gentlewomen (Nos. 243 to 246). No. 243. No. 245. No. 246. Mayor. — The chief magistrate of a city or corporate town. The Mayors of London, York, and Dublin are styled " Lord Mayor," and the first has borne the title of Right Honourable since the year 1354. Medals. — Honourable insignia bestowed uy the Sovereiojn for eminent worth, generally for naval or military services. Ancient medals bear the portrait of princely personages only, but after the fifteenth century this custom was discontinued. Medals generally have ribbons attached, and sometimes small bars or clasps bearing the name of a particular action in a campaign. Medjidic.—K Turkish Order, instituted in 1852. Membered.—S2i6. of the beak and legs of any bird when they are of a different tincture from the body Merchants' Marks. — Devices adopted by the merchants and traders of the middle ages (Nos. 247 and 248). Mercury. — The ancient blazon iox purpure or purple. Meriette.—^te Martlet. Merlion. — See Martlet.
  • 41. GLOSSARY. 173 Mermaid. — A fabulous being, half woman and half fish. The mermaid is a badge of the Berkeleys ; it was the dexter supporter of Sir Walter Scott ; and the supporters of Viscount Boyne are meruiaids. Lord Berkeley, in his brass at Wotton-under- Edge, A.D. 1392, wears a collar of mermaids (No. 249) over his camail. No. 248. No. 249.— Collar of Mermaids. Merman. — A sea- man or Triton. Mesne Lord. — An old title given to a lord who was subject to another lord. Metals. — The metals in Heraldry are two— viz., gold and silver — or and argent; the former represents yellovv^, and the latter white. Gold is represented in engraving by dots, and silver by the absence of lines or dots. Middle Base. — That part of the shield close to the lower point. Middle Chief.— ThQ upper central part of the shield. Mill-pick. — An instrument of the pickaxe description, used for dressing millstones. No. 250. No. 251. No. 252. No. 253.
  • 42. 174 HERALDRY. Millrind or Millrine. — The iron which is fixed in the centre of a millstone (Nos. 250 to 253). Millstone. — Generally represented charged with a millrind. When the lines of the stone are of a different tincture, they must be blazoned picked of such a tincture. Miniver. — A white fur used in Peers' robes. Mirror. — Always represented framed and with a handle. Mitre, — A crown or cap of Bishops and Abbots. In England, since the Reformation, the mitre has not been worn by Bishops upon their heads, but it is painted on their carriages, and otherwise variously borne. The pastoral staff of the Bishop is again coming into use, and probably the mitre will again be used for the purpose it was originally intended. Molitie. — A cross, terminating like a millrind. Monarch. — The chief ruling power of a community. The title of Monarch is sometimes hereditary, and sometimes conferred after election, as in the case of the Pope. Monogra7n.—K single initial or other letter, also a combination of several initials or letters, arranged as to form a single compound device. In the church of St. Mary, at Bury St. Edmunds, the ceiling of the eastern compartment of the south aisle, once the chantry of John Baret, is richly painted and diapered with beautifully drawn collars of SS, each collar enclosing the monogram of this zealous Lancastrian, I. B. Montem C//j/^w.— A triennial procession No. 254.- Monogram and at Eton College, discontinued about thirty Collar of SS op John Ba- ° ' •' RBT, Bury St. Edmunds. years agO.
  • 43. GLOSSARY, 175 Moon. — The moon is variously borne in Heraldry. She is said to be in her complement, or /// plentitude, when at the full ; she is a crescent when her horns point toward the chief. She is decrescent when her horns point to the sinister, and i7icrescent, or in increment, when her horns point to the dexter. Moor Cock. — The male of the black game. Moor's Head. — The heraldic term for the head of a negro man. This charge is generally placed in profile, and wreathed about the forehead. Morion. — A steel cap worn by a man-at-arms. It has neither visor nor beaver. Morse. — A clasp, usually encircled with varied ornamentation. Morse. — See Sea-Lion. Mortar. — See Pestle a?id Mortar. Mortier. — A cap of estate. Mortcours. — Funeral lamps, borne in the arms of the Waxchandlers' Company. Motto. — A word or sentence which accompanies a coat of arms or badge. Mottoes originally belonged to the badge, and when there was no badge, to the crest. In battle, the motto or mot was used as a war-cry ; it generally bore reference to the family name, the badge, or crest, or to some charge on the shield. The motto of the Nevilles is, "Ne vile velis j" that of Vernon, "Ver non semper viret." These two instances may be classed with punning mottoes. Some mottoes take the form of a prayer. Mound. — The ball or globe surmounting a crown. This ball or globe is represented bearing a cross, generally a cross pattee. The seal of William the Conqueror represents a crown surmounted by a mound. Mullet or i^///.— Supposed by some writers to have had- its
  • 44. 176 HERALDRY, origin in the rowel of a spur ; but this can scarcely be so, as the Mullet appears before the introduction of spurs. It has five points, and is sometimes pierced or voided, but when so, it is generally described as such. Some ancient writers contend that the Mullet should invariably be pierced. The Mullet must not be confused with the star^ which generally has six points. The Mullet is one of the marks of cadency. Mullet is also a term for a fish. Mural Crown. — A circle of gold embattled, borne sometimes as a charge, but more generally as a crest. A mural crown often occurs in arms granted to officers who have distinguished tliemselves in sieges ; and it is intended to represent the ancient Roman distinction for bravery in ascending the walls of a fortress. Muraille. — Covered with a representation of masonry. Murrey or Sanguine. — A dark brown colour. Muschetors. — Ermine, without the usual three black spots. Naiant or Natant, applies to a fish swimming or set fesse-wise on a shield. Naissant. — An animal rising or issuing from the middle of an ordinary. Narcissus. — A flower of six petals, not unlike the cinquefoil. Naiant. — See Naiant. Naval Crmvn. — A crown composed of sails and stems of ships, placed alternately on a circle or fillet. In the end of the past and the early part of this century, the naval crown appears in numerous grants of arms for distinguished maritime services. Nebuly or Nebulee. — A partition line running in and out like the '* dovetail joint." Neptune. — Represented as half man and half fish, holding a tridenf".
  • 45. GLOSSARY.- 177 Nened. — Said of the fibres of Jeaves when of a different tincture from the leaves. Nimbus. — The glory round the head of a saint. Noblemen. — Dukes, Marquesses, Earls, Viscounts, and Barons. Sir James Lawrence (" Nobility of the British Gentry ") gives it a wider sense, and says, any one having armorial bearings. Norroy. — One of the three Kings-of-Arms. Nouied. — Twisted into a knot. Oak. — The emblem' of strength. Oak-trees and branches are often borne as charges and crests. Obsidtonal Crcnvji. — A garland formed of twigs and grasses. Of the Field. — The same tincture as the field Of the First.— Oi the same tincture as that first specified. Ogress. — See Pellet. Olive-tree. — The emblem of peace and concord. Ombrk or Adumbrated. — A shadowed or outlined charge. Ondee. — Wavy. Ongle. — Armed. On Degrees. — Said of a cross placed on steps. Opinicus.—K fictitious heraldic being, half dragon and half lion. Oppressed. — See Debruised. Or. — The metal gold, represented in engravings by dots. Ordinaries. — The principal bearings in coat armour. Oreiller. — A pillow or cushion. Orle. — One of the subordinaries, a diminutive of the bordure, but detached from the outer side of the shield. An orle of bezants should be eight bezants in orle. Ostrich Feathers.— OnQ of the badges of Henry VI. Three feathers are blazoned 2, plume (see also Flume). The tops of ostrich feathers are always represented bending over. 12
  • 46. 178 HERALDRY. OUer.— The amphibious animal of this name, often borne with a fish in his mouth. Over all or Stcr le tout. — Said of a bearing surmounting or placed over others. Overt. — Expanded, ready for flight. See Displayed. Owl. — The emblem of wisdom, always borne full-faced. Ox-yoke. — The coupled collars used when oxen are employed for hauling. Padlock. — Generally borne of square form. Pale. — One of the ordinaries, consisting of a band placed vertically in the middle of the shield. In pale is said of charges when placed in the direction of a pale. A shield divided down the middle is said to h^ parted per pale. Pale^vays. — Placed in the direction of a pale, that is, set in a vertical positiort. Pall. — k subordinary or a charge in form like the letter Y. The upper part of a saltire conjoined to the lower part of a pale. It takes its name from the archiepiscopal vestment worn by Archbishops. This charge is borne in the arms of the archiepiscopal Sees of Canterbury, Armagh, and Dublin. As a vestment, the Pall is a narrow circular band of white larab's-wool, which is adjusted about the shoulders, and has two similar bands hanging down from it, the one before and the other behind. Pallet.— K diminutive of the pale, and of one-half its width. Palmer's or Pilgrim's Staff.— A straight staff with a knob at the top. With this is generally borne the palmer's scrip or bag. Paly.— DWidQd by an equal number of vertical lines, the spaces alternately of metal and colour. Paly Bendy.— VQy crossed by diagonal lines from the dexter to the sinister.
  • 47. GLOSSARY. 179 Panther. — Generally represented full- faced. When with fire issuing from its mouth, it is blazoned incensed. Papal Crown. — A red, mitre-shaped cap, encircled by three Marquess' coronets, and surmounted by a mound and cross pattee. Panache. — A plume of feathers, generally those of the peacock, set upright, so as to form a crest. The Panache was almost always regarded as a crest. (No. 255.) No. 255.— Panache. Crest of John, Lord Scrope, K.G., from his Stall-Plate. Partition lines. — Lines cutting or dividing the shield ; the direction of these lines corresponds with the Ordinaries, as party per fesscj party per bend^XhdX is, parted by a line running in the direction of a fesse, or a bend. These lines are sometimes plain, and sometimes irregular. Party or Parted. — Divided after the heraldic manner. Paschal Lamb or Holy Lamb. — A white lamb, passant, represented as carrying the banner of St. George. Pascuant. — Grazing. Passant. — Walking, with head in profile. Passant Guardant. — Walking, with the face affrontee, 12—2
  • 48. [8o HERALDRY. Passant Reguardant. — Walking and lookmg back. . Pastoral Staff. — Part of the insignia of the episcopal office. It is a staff of metal, ivory, or wood, with a curved head or crook. The Pastoral Staff is also borne by an Abbot, but the crook is by him carried turned inwards; whereas by a Bishop it is carried outwards. A vexillum^ or scarf, hangs from almost all representations of the Pastoral Staff, encircling its shaft The Pastoral Staff is borne in the arms of Westminster Abbey, &c., &c. * Paternoster^ Pattee, Patonce, Patriarchal. — See Crosses. Paternal Arms. — The original arms of a family. Patrick, St., Order of. — An Order of Knighthood, established in 1783. It now consists of the Sovereign, the Grand Master, and twenty-two knights. Pauldron. — Armour to defend the shoulder. Paw, — The foot only, of an animal. Pawne. — See Peacock. Peacock. — Borne in profile. When blazoned in pride it is represented affrontCy and with its tail fanned, or spread circularly. Pean. — One of the heraldic furs, similar to ermine, but with a sable ground and gold spots. Pea-Pise. — Pea-stalk, having leaves and flowers. Pearl. — The ancient term in Heraldry for white. Peel. — A baker's wooden drawing-shovel. Peer. — The title given to every nobleman of Great Britain. There are five degrees of Peerage, viz., Dukes, Marquesses, Earls, Viscounts, and Barons. Pegasus. — A rampant horse with wings. Pelican is represented with neck embowed, wings endorsed, wounding her breast with her beak. When feeding her young with her blood, she is blazoned in her piety.
  • 49. GLOSSARY i8r Pelicaiis Head. — With this charge the neck is represented embowed. Pellet or Ogress.— A black roundel. English heralds alone give it this name. French and other heralds call all roundels torteaiix. Tendent or Pendant. — Dropping or hanging from the charge. Pemted. — Said of a feather, when the shaft or quill is of a different tincture. Penner and Inkhorn. — An ancient pen and ink holder (No. 256). No. 256, No. 257. Penno7i. — A small flag with one or two points. In the middle ages the Pennon was carried by a knight upon his lance, and it bore his badge or personal device. The badge or charges were so placed, that they were in position when the lance was held horizontally. Pennoncelle. — A small pennon. Per. — By means of, or after the manner of Generally used before an ordinary, to denote a partition of the field. Perelose.—K demi-garter. Perforated. — See Pierced. Pheon. — The barbed head of a spear or arrow, engrailed on the inner side. The point of the spear is placed in base. (No. 257.) Phoenix. — A fabulous bird, represented issuant from flames.
  • 50. i82 HERALDRY, Pierced. — Perforated and showing the field. When the shape of the aperture is not given, it is circular. Piety, in her. — Said of the pelican when feeding her young with her blood. Pike.—l!iQ. fish of this name, in Heraldry generally called luce. Pile. — An ordinary in the shape of a wedge, issuing from the chief, and tapering to a point in the middle base of the shield. Some heralds class the Pile with the subordinaries. Pilgrim. — Represented with a sleeved under-vest, and long outer robe with open sleeves ; a broad-brimmed hat, ornamented with a shell ; on his feet sandals, and in his hand a staff. Pily Bendy. — Divided ho^h pile-wise and bend-wise. Planta-Genista. — The broom plant, the famous badge of the Plantagenet family. This badge was assumed by Geoffrey Plantagenet, Count of Anjou, the founder of the family. A sprig of the broom is represented with its spike-like leaves, its golden blossoms, and its pods, the latter sometimes open and disclosing their seeds. Plate. — A silver roundel, represented flat; m foreign Heraldry termed bezants argent. Semee of Plates is termed Plattee. Playing- tables. — A backgammon table. Plentitude. — Said of the moon when represented full. Plume of Feathers. — Until the end of the fifteenth century these were generally set upright, in a conventional manner, and afterwards they were waving plumes. Pods of Beans, &c. — When used as charges, the pods are open, and show their seed. Point. — A chevron-shaped charge, issuing from the base of the shield, and tapering to the fesse point. It occurs in the arms of Hanover (formerly part of the Royal arms of England).
  • 51. GLOSSARY. 183 Points of a Label. — The pendants. Points of the Shield.— Tq. parts denoting the position of any figure. (See Chapter on Shields.) Pommelled, — Said of the round ball affixed to the handle of a sword, when of a different tincture. No. 258 represents the Pommel of the sword-hilt that is sculptured with the effigy of the Black Prince, at Canterbury, and which is charged with a most spirited representation of a lion's face, the face of the true heraldic lion. No, 25S.— Pommel of the Swokd-hilt of the Black Prince, Canterbury Cathedral. Pomme. — A green roundel. Pommee. — A form of cross. Popinjay.— K green parrot, with red legs and beak. Porcupine. — Generally represented passant, with quills raised. The family of Speechly or Speechle bear this for a crest. Port. — A castle gateway. Pot. — A steel head-piece. Portcullis.— K frame or grating formed of five vertical, and four horizontal bars. The lower ends of the vertical bars are pointed ; in the upper angles are rings, from which are suspended chains. The Portcullis was a device of Henry VII., and was, and is now, one of the badges of the Neville family. The Portcullis is also
  • 52. 1 84 HERALDRY. borne as a charge ; it appears in the arms of Westminster City, &c. Portcullis is a title of one of the pursuivants of the College of Arms. Potent. — The heraldic fur of this name. Potentee, — One of the divisional lines, which is formed by a succession of crutch-shaped figures. Pots are represented as three- legged iron pots, or cauldrons. Pouldron. — See Pauldt'on. Powdered, Semee, or Poudree. — Said of an indefinite number of charges scattered or sprinkled over the field (No. 207, page 100). Preene. — A cloth-dressing instrument. Premier. — A title used by English heralds, to signify the most ancient creation of a Peer of any degree. Prester or Presbyter John. — Represented as a mitred Bishop seated on a tomb, his dexter hand extended, and in his sinister a mound, and holding in his mouth a sword. Pretence, Shield of, — A small shield pretended or placed in the centre, upon the face of the shield. The arms of an heiress are generally borne on a small shield of preteticc, and placed upon the shield of the husband. Preying. — Devouring its prey. The family of Haynes, of Whittlesea, Co. Cambs., bears for a crest an eagle preying on a tortoise. Pride, In. — With spread tail. Primate. — The rank next below that of a patriarch in the Church. In England, both our Archbishops are Primates, one of England and the other of all England; but an Archbishop is not necessarily a Primate. Prince. — A title now generally applied to sons and grandsons of Kings and Emperors. In England the term is now only applied
  • 53. GLOSSARY. 185 to the Royal family. The title of Prince of Wales is created by a special patent. Formerly the Bishops of Durham were Princes and their mitres were surmounted with a coronet. Strictly, in Heraldry, Dukes, Marquesses, and Earls are Princes. Frivy Seal. — The seal attached to grants of minor importance, and to more important ones which are afterwards to pass the great seal. Proper. — The true or natural colour. Pryck-Spir. — See Spur. Purfl^d. — Garnished. Said of the studs of armour when of a different tincture from the armour itself. Purflew or Purflen. — An old term to express the embroidery of a bordure of fur. Purpure. — The colour purple. In engraving purpure is represented by diagonal lines from the left to the right. It is of rare occurrence in English Heraldry. Purse. — Represented as worn in the middle ages suspended from the girdle. Pursuivant. — An officer of the Herald's College of the third and lowest degree. Originally it was an order of probation, and was an office from which the heralds and Kings-of-Arms were made. There are in the College of Arms four Pursuivants : Rouge Croix, Blue Mantle, Rouge Dragon, and PortciUlis. Up to the time of Queen Elizabeth, the Pursuivants wore their tabards having the sleeves hanging in front and behind, that they might not be mistaken for heralds. In 1576 Rouge Croix was censured for wearing his coat as a herald. The Pursuivant now wears his coat as does a herald, but he is not entitled to the SS chain worn by heralds. Pyot. — A magpie. Python. — A winged serpent.
  • 54. 1 86 HERALDRY. Quadrate. — Squared. Quarter. — One of the ordinaries, or subordinaries, now superseded by the canton. Quartered. — Divided. Quarterings. — The several coats marshalled on one shield. Quartering was very little in use till the fifteenth century. Quarterly. — Divided into four quarters , also, divided into more than four sections, in which case the number is to be specified in the blazon, as quarterly of six^ quarterly of eighty &c., &c. Quarterly Quartered. — Is said of a saltire quartered in its centre, and the four arms of which are each parted by two different tinctures, alternately arranged. (See also page i8.) Quatrefoil. — A four-leaved grass, formed of four curved leaves, and represented without a stalk. Quatrefoil Slipped. — A quatrefoil having a stalk attached to it. The quatrefoil is a very common charge in armorial bearings. Queue. — The tail of an animal. Queue fourchee or Double-Queue. — Having a forked tail (No. 259). No. aso— Arms op Hesss Darmstadt. Az., a lion queue fourch6e ramf>t.. barry often flrg. andgu. . crovmed or, and holding in his dexter paw a sword ppr., hilt and pommel or. Quill. — An instrument on which is wound yam, gold thread, &c.
  • 55. GLOSSARY. 187 It must be expressed in the blazon whether the quill be filled or unfilled. Qidlled. — Used to denote the tincture of the quills or feathers. Qiiintai7i. — A tilting post used in mediaeval games. Qiiintcfoil. — See Cinqiie-foil. Quiver of Arrows. — A case filled with arrows. Rack-pole beacon. — See Fire-beacon. Radiant. — See Rayontik. Ragidy or Ragulee. — A line having serrated projections. Rainbow. — Represented naturally, as issuing from clouds. Ram. — The Ram, in Heraldry, is generally treated conventionally. Abbot Ramryge, of St. Albans, assumed and bore rams as his supporters, and in the Abbey of St. Albans some beautiful sculptured examples of the heraldic Ram exist. Ra7n. — See Battering-ram. Rampant. — Standing erect on the hind-legs ; a term applied to the lion and other beasts of prey. One of the fore- legs is represented elevated, and the head in profile. Rapier. —A narrow stabbing sword. Ras'ee. — See Erased. Raping or Rapin. — Preying. Raven. — The bird of this name. Borne by the family of CORBETT. Rayonne or Radiant. ^llsLmg rays issuing from the edge of the charge or ordinary. Rays. — When drawn round a figure of the disc of the sun, heraldic Rays are sixteen in number, and tiiey are akernately straight and wavy. Rebated. — Broken or cut off at the point. Rebus.— In Heraldry a charge having an allusion to the liearer s
  • 56. 1 88 HERALDRY. name. Devices or charges allusive to the name of the bearer were very common in the middle ages. In Westminster Abbey, Abbot IsLip's chapel gives two forms of his Rebus — one a man falling from a tree, exclaiming, " I slip ; " the other a human eye, and a small branch or slip of a tree. Rec€7'cellee. — Curled. Reed. — See Stay. Reflected or Reflexed. — Turned or bent backwards. Red Hand. — A sinister hand, erect, open, and couped ; the arms of Ulster, and the distinguishing badge of Baronets. Regalia. — The ensigns of royalty, dignity, or office, more espethose of a coronation. The Regalia of England, before the Reformation, was in the keeping of Westminster Abbey, and it is still presented to the Sovereign, at the coronation, by the Dean. Reguardant. — Looking back. Reindeer. — A stag with double attires. Removed. — Out of its proper position. Respectant or Respecting. — Two beasts (not of prey) rampant face to face. Rest. — See Clarion. Retorted. — Intertwined frette-wise. Reversed. — A charge with the upper part turned downwards. Riband. — A diminutive of the bend. It is similar to a cotise, but is couped at the extremities. Rising or Roussant. — Making ready for flight. Rompu. — Broken, or interrupted. Rose. — In Heraldry the Rose is represented in a conventional form, generally with ten leaves (No. 261), but sometimes with only five (No. 260). When there are ten, five are represented within or upon the outer five. The rose is never drawn with a stalk, unless
  • 57. GLOSSARY. 189 expressed in the blazon. As it is sometimes gules, and sometimes argent, it is not blazoned /r^/ifr; but it is often blazoned ^^ barbed and seeded proper^' and then the barbs are to be represented green, and the seeds gold or yellow. The Red Rose was the badge of the Plantagenets of the House of Lancaster, and the White Rose that of York. An example of the heraldic Rose, with foliage, occurs carved upon an oak bench-end, in the chancel of Pulham, in Norfolk. The monument in Westminster Abbey to the memory of Henry VH. is adorned with beautiful specimens of this renowned historical badge. No. 260. No. 261. No. 262. Roses of York and Lancaster. Rose-en-soleil.~ThQ rose argent of the House of York, surrounded with rays, as of the sun (No. 262). Roiielle-Spur. — See Spur. Rottge Croix. —The title of one of the pursuivants belonging to the Enghsh College of Arms. The period of the institution of Rouge Croix is not certain, but it is believed to be the most ancient. The title is derived from the Red Cross of the patron saint of England. Rouge Dragon. — The title of one of the pursux nts of the College of Arms, founded by Henry VII. immediately before his coronation. Henry VII. used a Red Dragon as one of his supporters.
  • 58. I90 HERALDRY, Routidel ox Koundlet.—K charge of a circular form. Roundels have special indicative names, according to their tinctures, viz. : a roundel or is blazoned a bezant ; a roundel ar. a plate, &c., &c. In foreign Heraldry these distinctive names are not given, neither are they in Scotch Heraldry. Fowei. — Part of a spur. Euby.—ThQ ancient blazon {or gules or red. Rudder. — A badge of the Lords Zouche. The tiller and stays are generally blazoned of a different tincture. Rue, Chaplet or Wreath of. — A charge in the arms of Saxony. It resembles a coronet placed bend-wise, and it is sometimes blazoned a bend archee coronette, a coronet extended in bend, or a bend treflee vert. On the continent it is blazoned a crancelin (a small garland.) Rustre. — A pierced lozenge. Sable. — Black ; represented in engraving by horizontal and vertical lines crossing each other. Sacre. — See Saker. Sagittarius.— ^Qt Cefitaur. Sail. — Sails are generally represented in Heraldry with a portion of the mast before them. Saint George's £mign.— The distinguishing flag of the British navy. It is the red cross of St. George upon a white field, with a Union Jack in the dexter chief corner. Saint Andrew's Cross. — See Saltire. Saker. — A kind of falcon. Salamander. — A fabulous monster, generally depicted passant, surrounded by flames. A golden Salamander is the crest of James, Earl Douglas, K.G., the first Scottish noble who was elected into the Order of the Garter, and who died a.d. 1483 ; this ani 
  • 59. GLOSSARY. [91 mal is represented on the Garter-plate of the Earl as breathing flames (No. 263). No. 263. Salient or Saliant. In the act of springing. It is similar to rampant, but with two paws up and two down. Solid. — A mediaeval metal helmet. Sail-cellars.— -Cuips represented with salt falling from them. Salt-cellars are borne in the arms of the Salters' Company. Saltire or Saltier. — One of the honourable ordinaries. This is also called a St. Andrew's Cross. The Saltire is formed by a bend dexter and a bend sinister crossing each other, like the letter X. The Saltire contains one-fifth of the field, but one-third when charged. Saltire-wise. — As a saltire. When two swords or other charges are placed saltire-wise, the sinister is generally placed uppermost. Saltorels. — Small saltires. Sandal or Brogue. — A foot covering. Sanglant. — Stained with blood. Sanglier. — The boar. Sanguine. — Murrey, or blood colour ; represented by lines crossing each other saltire wise. This tincture is of rare occurrence. Sa?is Nombre. — See Powdered. Sapphire. — The ancient blazon for azure or blue.
  • 60. 192 HERALDRY. Saracen.— QtXitxzSiy represented wreathed about the temples. Sarcellee. — Cut through the middle. Saturn. — An ancient blazon for sable or black. Satyr.— K fabulous monster composed of the lion and antelope, and having the face of an old man Savage or Wild Man. — A man represented naked, or with wreaths round the head and loins, and bearing a club in one hand. Savages are frequently borne as supporters^ especially in Scotch armoury. Scaled. — Said of a fish, when the scales differ in tincture from the fish itself Scaling- Ladder. — A ladder having two hooks at the upper end, and generally placed bend-wise on a shield. The family of Grey bear the Scaling-Ladder for a crest (No. 264). No. 264. Scallop. — A kind of shell, supposed to have been introduced into Heraldry by the pilgrims who bore it as a badge (see Escallop). Scarf. — A small banner attached to a crozier. When borne as a charge, tlie Scarf is generally represented in bend. Scarpe or Escarpe. — A diminutive of the bend sinister, and onehalf its breadth. Sceptre.— Pl staff; the symbol of Royal authority, and the most ancient ensign of sovereignty.
  • 61. Welcome to our website – the ideal destination for book lovers and knowledge seekers. With a mission to inspire endlessly, we offer a vast collection of books, ranging from classic literary works to specialized publications, self-development books, and children's literature. Each book is a new journey of discovery, expanding knowledge and enriching the soul of the reade Our website is not just a platform for buying books, but a bridge connecting readers to the timeless values of culture and wisdom. With an elegant, user-friendly interface and an intelligent search system, we are committed to providing a quick and convenient shopping experience. Additionally, our special promotions and home delivery services ensure that you save time and fully enjoy the joy of reading. Let us accompany you on the journey of exploring knowledge and personal growth! ebookname.com