/en/actions/security-guides/using-githubs-security-features-to-secure-your-use-of-github-actions)
    * [ Automatic token authentication  ](/en/actions/security-guides/automatic-token-authentication)

  * Creating actions 

    * [ About custom actions  ](/en/actions/creating-actions/about-custom-actions)
    * [ Create a Docker container action  ](/en/actions/creating-actions/creating-a-docker-container-action)
    * [ Create a JavaScript action  ](/en/actions/creating-actions/creating-a-javascript-action)
    * [ Create a composite action  ](/en/actions/creating-actions/creating-a-composite-action)
    * [ Metadata syntax  ](/en/actions/creating-actions/metadata-syntax-for-github-actions)
    * [ Dockerfile support  ](/en/actions/creating-actions/dockerfile-support-for-github-actions)
    * [ Set exit codes  ](/en/actions/creating-actions/setting-exit-codes-for-actions)
    * [ Publish in GitHub Marketplace  ](/en/actions/creating-actions/publishing-actions-in-github-marketplace)
    * [ Share from your private repository  ](/en/actions/creating-actions/sharing-actions-and-workflows-from-your-private-repository)
    * [ Share with your organization  ](/en/actions/creating-actions/sharing-actions-and-workflows-with-your-organization)
    * [ Release and maintain actions  ](/en/actions/creating-actions/releasing-and-maintaining-actions)
    * [ CLI setup action  ](/en/actions/creating-actions/developing-a-third-party-cli-action)

  * [ Guides for GitHub Actions  ](/en/actions/guides)

  * [ GitHub Actions ](/en/actions "GitHub Actions") / 
  * [ Using workflows ](/en/actions/using-workflows "Using workflows") / 
  * [ About workflows ](/en/actions/using-workflows/about-workflows "About workflows")

#  About workflows

Get a high-level overview of GitHub Actions workflows, including triggers,
syntax, and advanced features.

##  In this article

  * About workflows 
  * Workflow basics 
  * Triggering a workflow 
  * Workflow syntax 
  * Create an example workflow 
  * Understanding the workflow file 
  * Viewing the activity for a workflow run 
  * Using starter workflows 
  * Advanced workflow features 

##  About workflows

A workflow is a configurable automated process that will run one or more jobs.
Workflows are defined by a YAML file checked in to your repository and will
run when triggered by an event in your repository, or they can be triggered
manually, or at a defined schedule.

Workflows are defined in the ` .github/workflows ` directory in a repository,
and a repository can have multiple workflows, each of which can perform a
different set of tasks. For example, you can have one workflow to build and
test pull requests, another workflow to deploy your application every time a
release is created, and still another workflow that adds a label every time
someone opens a new issue.

##  Workflow basics

A workflow must contain the following basic components:

  1. One or more _events_ that will trigger the workflow. 
  2. One or more _jobs_ , each of which will execute on a _runner_ machine and run a series of one or more _steps_ . 
  3. Each step can either run a script that you define or run an action, which is a reusable extension that can simplify your workflow. 

For more information on these basic components, see " [ Understanding GitHub
Actions ](/en/actions/learn-github-actions/understanding-github-actions#the-
components-of-github-actions) ."

![Diagram of an event triggering Runner 1 to run Job 1, which triggers Runner
2 to run Job 2. Each of the jobs is broken into multiple
steps.](/assets/cb-25535/images/help/actions/overview-actions-simple.png)

##  Triggering a workflow

Workflow triggers are events that cause a workflow to run. These events can
be:

  * Events that occur in your workflow's repository 
  * Events that occur outside of GitHub and trigger a ` repository_dispatch ` event on GitHub 
  * Scheduled times 
  * Manual 

For example, you can configure your workflow to run when a push is made to the