.steps[*].if`](/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstepsif) conditional combined with the `conclusion` of the previous run. For example:
+If you specify multiple `workflows` for the `workflow_run` event, only one of the workflows needs to run. For example, a workflow with the following trigger will run whenever the "Staging" workflow or the "Lab" workflow completes.
```yaml
on:
workflow_run:
- workflows: ["Build"]
+ workflows: [Staging, Lab]
+ types:
+ - completed
+```
+
+#### Running a workflow based on the conclusion of another workflow
+
+A workflow run is triggered regardless of the conclusion of the previous workflow. If you want to run a job or step based on the result of the triggering workflow, you can use a conditional with the `github.event.workflow_run.conclusion` property. For example, this workflow will run whenever a workflow named "Build" completes, but the `on-success` job will only run if the "Build" workflow succeeded, and the `on-failure` job will only run if the "Build" workflow failed:
+
+```yaml
+on:
+ workflow_run:
+ workflows: [Build]
types: [completed]
jobs:
@@ -850,16 +1481,105 @@ jobs:
runs-on: ubuntu-latest
if: {% raw %}${{ github.event.workflow_run.conclusion == 'success' }}{% endraw %}
steps:
- ...
+ - run: echo 'The triggering workflow passed'
on-failure:
runs-on: ubuntu-latest
if: {% raw %}${{ github.event.workflow_run.conclusion == 'failure' }}{% endraw %}
steps:
- ...
+ - run: echo 'The triggering workflow failed'
```
-## Triggering new workflows using a personal access token
+#### Limiting your workflow to run based on branches
-{% data reusables.github-actions.actions-do-not-trigger-workflows %} For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)."
+You can use the `branches` or `branches-ignore` filter to specify what branches the triggering workflow must run on in order to trigger your workflow. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onworkflow_runbranchesbranches-ignore)." For example, a workflow with the following trigger will only run when the workflow named `Build` runs on a branch named `canary`.
-If you would like to trigger a workflow from a workflow run, you can trigger the event using a personal access token. You'll need to create a personal access token and store it as a secret. To minimize your {% data variables.product.prodname_actions %} usage costs, ensure that you don't create recursive or unintended workflow runs. For more information on storing a personal access token as a secret, see "[Creating and storing encrypted secrets](/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets)."
+```yaml
+on:
+ workflow_run:
+ workflows: [Build]
+ types: [requested]
+ branches: [canary]
+```
+
+#### Using data from the triggering workflow
+
+You can access the [`workflow_run` event payload](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_run) that corresponds to the workflow that triggered your workflow. For example, if your triggering workflow generates artifacts, a workflow triggered with the `workflow_run` event can access these artifacts.
+
+The following workflow uploads data as an artifact. (In this simplified example, the data is the pull request number.)
+
+```yaml
+name: Upload data
+
+on:
+ pull_request:
+
+jobs:
+ upload:
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Save PR number
+ env:
+ PR_NUMBER: {% raw %}${{ github.event.number }}{% endraw %}
+ run: |
+ mkdir -p ./pr
+ echo $PR_NUMBER > ./pr/pr_number
+ - uses: actions/upload-artifact@v2
+ with:
+ name: pr_number
+ path: pr/
+```
+
+When a run of the above workflow completes, it triggers a run of the following workflow. The following workflow uses the `github.event.workflow_run` context and the {% data variables.product.product_name %} REST API to download the artifact that was uploaded by the above workflow, unzips the downloaded artifact, and comments on the pull request whose number was uploaded as an artifact.
+
+```yaml
+name: Use the data
+
+on:
+ workflow_run:
+ workflows: [Upload data]
+ types:
+ - completed
+
+jobs:
+ download:
+ runs-on: ubuntu-latest
+ steps:
+ - name: 'Download artifact'
+ uses: actions/github-script@v5
+ with:
+ script: |
+ let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ run_id: context.payload.workflow_run.id,
+ });
+ let matchArtifact = allArtifacts.data.artifacts.filter((artifact) => {
+ return artifact.name == "pr_number"
+ })[0];
+ let download = await github.rest.actions.downloadArtifact({
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ artifact_id: matchArtifact.id,
+ archive_format: 'zip',
+ });
+ let fs = require('fs');
+ fs.writeFileSync(`${process.env.GITHUB_WORKSPACE}/pr_number.zip`, Buffer.from(download.data));
+
+ - name: 'Unzip artifact'
+ run: unzip pr_number.zip
+
+ - name: 'Comment on PR'
+ uses: actions/github-script@v5
+ with:
+ github-token: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %}
+ script: |
+ let fs = require('fs');
+ let issue_number = Number(fs.readFileSync('./pr_number'));
+ await github.rest.issues.createComment({
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ issue_number: issue_number,
+ body: 'Thank you for the PR!'
+ });
+```
diff --git a/content/actions/learn-github-actions/understanding-github-actions.md b/content/actions/learn-github-actions/understanding-github-actions.md
index 6e69efdfbc11..bfa2cb82a64f 100644
--- a/content/actions/learn-github-actions/understanding-github-actions.md
+++ b/content/actions/learn-github-actions/understanding-github-actions.md
@@ -114,7 +114,7 @@ To help you understand how YAML syntax is used to create a workflow file, this s
```
-Specifies the trigger for this workflow. This example uses the push event, so a workflow run is triggered every time someone pushes a change to the repository or merges a pull request. This is triggered by a push to every branch; for examples of syntax that runs only on pushes to specific branches, paths, or tags, see "Workflow syntax for {% data variables.product.prodname_actions %}."
+Specifies the trigger for this workflow. This example uses the push event, so a workflow run is triggered every time someone pushes a change to the repository or merges a pull request. This is triggered by a push to every branch; for examples of syntax that runs only on pushes to specific branches, paths, or tags, see "Workflow syntax for {% data variables.product.prodname_actions %}."
|
diff --git a/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md b/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md
index e2b3572a62ec..388d25f539f9 100644
--- a/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md
+++ b/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md
@@ -35,74 +35,149 @@ The name of your workflow. {% data variables.product.prodname_dotcom %} displays
## `on..types`
-Selects the types of activity that will trigger a workflow run. Most GitHub events are triggered by more than one type of activity. For example, the event for the release resource is triggered when a release is `published`, `unpublished`, `created`, `edited`, `deleted`, or `prereleased`. The `types` keyword enables you to narrow down activity that causes the workflow to run. When only one activity type triggers a webhook event, the `types` keyword is unnecessary.
+Selects the types of activity that will trigger a workflow run. Most GitHub events are triggered by more than one type of activity. For example, the `label` is triggered when a label is `created`, `edited`, or `deleted`. The `types` keyword enables you to narrow down activity that causes the workflow to run. When only one activity type triggers a webhook event, the `types` keyword is unnecessary.
You can use an array of event `types`. For more information about each event and their activity types, see "[Events that trigger workflows](/articles/events-that-trigger-workflows#webhook-events)."
```yaml
-# Trigger the workflow on release activity
on:
- release:
- # Only use the types keyword to narrow down the activity types that will trigger your workflow.
- types: [published, created, edited]
+ label:
+ types: [created, edited]
```
-## `on..`
+## `on..`
-When using the `push` and `pull_request` events, you can configure a workflow to run on specific branches or tags. For a `pull_request` event, only branches and tags on the base are evaluated. If you define only `tags` or only `branches`, the workflow won't run for events affecting the undefined Git ref.
+When using the `pull_request` and `pull_request_target` events, you can configure a workflow to run only for pull requests that target specific branches.
+
+Use the `branches` filter when you want to include branch name patterns or when you want to both include and exclude branch names patterns. Use the `branches-ignore` filter when you only want to exclude branch name patterns. You cannot use both the `branches` and `branches-ignore` filters for the same event in a workflow.
+
+If you define both `branches`/`branches-ignore` and [`paths`](#onpushpull_requestpull_request_targetpathspaths-ignore), the workflow will only run when both filters are satisfied.
+
+The `branches` and `branches-ignore` keywords accept glob patterns that use characters like `*`, `**`, `+`, `?`, `!` and others to match more than one branch name. If a name contains any of these characters and you want a literal match, you need to escape each of these special characters with `\`. For more information about glob patterns, see the "[Filter pattern cheat sheet](#filter-pattern-cheat-sheet)."
+
+### Example: Including branches
+
+The patterns defined in `branches` are evaluated against the Git ref's name. For example, the following workflow would run whenever there is a `pull_request` event for a pull request targeting:
+
+- A branch named `main` (`refs/heads/main`)
+- A branch named `mona/octocat` (`refs/heads/mona/octocat`)
+- A branch whose name starts with `releases/`, like `releases/10` (`refs/heads/releases/10`)
+
+```yaml
+on:
+ pull_request:
+ # Sequence of patterns matched against refs/heads
+ branches:
+ - main
+ - 'mona/octocat'
+ - 'releases/**'
+```
+
+### Example: Excluding branches
+
+When a pattern matches the `branches-ignore` pattern, the workflow will not run. The patterns defined in `branches` are evaluated against the Git ref's name. For example, the following workflow would run whenever there is a `pull_request` event unless the pull request is targeting:
+
+- A branch named `mona/octocat` (`refs/heads/mona/octocat`)
+- A branch whose name matches `releases/**-alpha`, like `beta/3-alpha` (`refs/releases/beta/3-alpha`)
+
+```yaml
+on:
+ pull_request:
+ # Sequence of patterns matched against refs/heads
+ branches-ignore:
+ - 'mona/octocat'
+ - 'releases/**-alpha'
+```
+
+### Example: Including and excluding branches
+
+You cannot use `branches` and `branches-ignore` to filter the same event in a single workflow. If you want to both include and exclude branch patterns for a single event, use the `branches` filter along with the `!` character to indicate which branches should be excluded.
+
+If you define a branch with the `!` character, you must also define at least one branch without the `!` character. If you only want to exclude branches, use `branches-ignore` instead.
+
+The order that you define patterns matters.
+
+- A matching negative pattern (prefixed with `!`) after a positive match will exclude the Git ref.
+- A matching positive pattern after a negative match will include the Git ref again.
+
+The following workflow will run on `pull_request` events for pull requests that target `releases/10` or `releases/beta/mona`, but for pull requests that target `releases/10-alpha` or `releases/beta/3-alpha` because the negative pattern `!releases/**-alpha` follows the positive pattern.
+
+```yaml
+on:
+ pull_request:
+ branches:
+ - 'releases/**'
+ - '!releases/**-alpha'
+```
+
+## `on..`
+
+When using the `push` event, you can configure a workflow to run on specific branches or tags.
+
+Use the `branches` filter when you want to include branch name patterns or when you want to both include and exclude branch names patterns. Use the `branches-ignore` filter when you only want to exclude branch name patterns. You cannot use both the `branches` and `branches-ignore` filters for the same event in a workflow.
+
+Use the `tags` filter when you want to include tag name patterns or when you want to both include and exclude tag names patterns. Use the `tags-ignore` filter when you only want to exclude tag name patterns. You cannot use both the `tags` and `tags-ignore` filters for the same event in a workflow.
+
+If you define only `tags`/`tag-ignore` or only `branches`/`branches-ignore`, the workflow won't run for events affecting the undefined Git ref. If you define neither `tags`/`tag-ignore` or `branches`/`branches-ignore`, the workflow will run for events affecting either branches or tags. If you define both `branches`/`branches-ignore` and [`paths`](#onpushpull_requestpull_request_targetpathspaths-ignore), the workflow will only run when both filters are satisfied.
The `branches`, `branches-ignore`, `tags`, and `tags-ignore` keywords accept glob patterns that use characters like `*`, `**`, `+`, `?`, `!` and others to match more than one branch or tag name. If a name contains any of these characters and you want a literal match, you need to *escape* each of these special characters with `\`. For more information about glob patterns, see the "[Filter pattern cheat sheet](#filter-pattern-cheat-sheet)."
### Example: Including branches and tags
-The patterns defined in `branches` and `tags` are evaluated against the Git ref's name. For example, defining the pattern `mona/octocat` in `branches` will match the `refs/heads/mona/octocat` Git ref. The pattern `releases/**` will match the `refs/heads/releases/10` Git ref.
+The patterns defined in `branches` and `tags` are evaluated against the Git ref's name. For example, the following workflow would run whenever there is a `push` event to:
+
+- A branch named `main` (`refs/heads/main`)
+- A branch named `mona/octocat` (`refs/heads/mona/octocat`)
+- A branch whose name starts with `releases/`, like `releases/10` (`refs/heads/releases/10`)
+- A tag named `v2` (`refs/tags/v2`)
+- A tag whose name starts with `v1.`, like `v1.9.1` (`refs/tags/v1.9.1`)
```yaml
on:
push:
# Sequence of patterns matched against refs/heads
- branches:
- # Push events on main branch
+ branches:
- main
- # Push events to branches matching refs/heads/mona/octocat
- 'mona/octocat'
- # Push events to branches matching refs/heads/releases/10
- 'releases/**'
# Sequence of patterns matched against refs/tags
- tags:
- - v1 # Push events to v1 tag
- - v1.* # Push events to v1.0, v1.1, and v1.9 tags
+ tags:
+ - v2
+ - v1.*
```
-### Example: Ignoring branches and tags
+### Example: Excluding branches and tags
+
+When a pattern matches the `branches-ignore` or `tags-ignore` pattern, the workflow will not run. The patterns defined in `branches` and `tags` are evaluated against the Git ref's name. For example, the following workflow would run whenever there is a `push` event, unless the `push` event is to:
-Anytime a pattern matches the `branches-ignore` or `tags-ignore` pattern, the workflow will not run. The patterns defined in `branches-ignore` and `tags-ignore` are evaluated against the Git ref's name. For example, defining the pattern `mona/octocat` in `branches` will match the `refs/heads/mona/octocat` Git ref. The pattern `releases/**-alpha` in `branches` will match the `refs/releases/beta/3-alpha` Git ref.
+- A branch named `mona/octocat` (`refs/heads/mona/octocat`)
+- A branch whose name matches `releases/**-alpha`, like `beta/3-alpha` (`refs/releases/beta/3-alpha`)
+- A tag named `v2` (`refs/tags/v2`)
+- A tag whose name starts with `v1.`, like `v1.9` (`refs/tags/v1.9`)
```yaml
on:
push:
# Sequence of patterns matched against refs/heads
- branches-ignore:
- # Do not push events to branches matching refs/heads/mona/octocat
+ branches-ignore:
- 'mona/octocat'
- # Do not push events to branches matching refs/heads/releases/beta/3-alpha
- 'releases/**-alpha'
# Sequence of patterns matched against refs/tags
- tags-ignore:
- - v1.* # Do not push events to tags v1.0, v1.1, and v1.9
+ tags-ignore:
+ - v2
+ - v1.*
```
-### Excluding branches and tags
+### Example: Including and excluding branches and tags
+
+You can't use `branches` and `branches-ignore` to filter the same event in a single workflow. Similarly, you can't use `tags` and `tags-ignore` to filter the same event in a single workflow. If you want to both include and exclude branch or tag patterns for a single event, use the `branches` or `tags` filter along with the `!` character to indicate which branches or tags should be excluded.
-You can use two types of filters to prevent a workflow from running on pushes and pull requests to tags and branches.
-- `branches` or `branches-ignore` - You cannot use both the `branches` and `branches-ignore` filters for the same event in a workflow. Use the `branches` filter when you need to filter branches for positive matches and exclude branches. Use the `branches-ignore` filter when you only need to exclude branch names.
-- `tags` or `tags-ignore` - You cannot use both the `tags` and `tags-ignore` filters for the same event in a workflow. Use the `tags` filter when you need to filter tags for positive matches and exclude tags. Use the `tags-ignore` filter when you only need to exclude tag names.
+If you define a branch with the `!` character, you must also define at least one branch without the `!` character. If you only want to exclude branches, use `branches-ignore` instead. Similarly, if you define a tag with the `!` character, you must also define at least one tag without the `!` character. If you only want to exclude tags, use `tags-ignore` instead.
-### Example: Using positive and negative patterns
+The order that you define patterns matters.
-You can exclude `tags` and `branches` using the `!` character. The order that you define patterns matters.
- - A matching negative pattern (prefixed with `!`) after a positive match will exclude the Git ref.
- - A matching positive pattern after a negative match will include the Git ref again.
+- A matching negative pattern (prefixed with `!`) after a positive match will exclude the Git ref.
+- A matching positive pattern after a negative match will include the Git ref again.
The following workflow will run on pushes to `releases/10` or `releases/beta/mona`, but not on `releases/10-alpha` or `releases/beta/3-alpha` because the negative pattern `!releases/**-alpha` follows the positive pattern.
@@ -114,45 +189,50 @@ on:
- '!releases/**-alpha'
```
-## `on..paths`
+## `on..`
+
+When using the `push` and `pull_request` events, you can configure a workflow to run based on what file paths are changed. Path filters are not evaluated for pushes of tags.
-When using the `push` and `pull_request` events, you can configure a workflow to run when at least one file does not match `paths-ignore` or at least one modified file matches the configured `paths`. Path filters are not evaluated for pushes to tags.
+Use the `paths` filter when you want to include file path patterns or when you want to both include and exclude file path patterns. Use the `paths-ignore` filter when you only want to exclude file path patterns. You cannot use both the `paths` and `paths-ignore` filters for the same event in a workflow.
-The `paths-ignore` and `paths` keywords accept glob patterns that use the `*` and `**` wildcard characters to match more than one path name. For more information, see the "[Filter pattern cheat sheet](#filter-pattern-cheat-sheet)."
+If you define both `branches`/`branches-ignore` and `paths`, the workflow will only run when both filters are satisfied.
-### Example: Ignoring paths
+The `paths` and `paths-ignore` keywords accept glob patterns that use the `*` and `**` wildcard characters to match more than one path name. For more information, see the "[Filter pattern cheat sheet](#filter-pattern-cheat-sheet)."
-When all the path names match patterns in `paths-ignore`, the workflow will not run. {% data variables.product.prodname_dotcom %} evaluates patterns defined in `paths-ignore` against the path name. A workflow with the following path filter will only run on `push` events that include at least one file outside the `docs` directory at the root of the repository.
+### Example: Including paths
+
+If at least one path matches a pattern in the `paths` filter, the workflow runs. For example, the following workflow would run anytime you push a JavaScript file (`.js`).
```yaml
on:
push:
- paths-ignore:
- - 'docs/**'
+ paths:
+ - '**.js'
```
-### Example: Including paths
+### Example: Excluding paths
+
+When all the path names match patterns in `paths-ignore`, the workflow will not run. If any path names do not match patterns in `paths-ignore`, even if some path names match the patterns, the workflow will run.
-If at least one path matches a pattern in the `paths` filter, the workflow runs. To trigger a build anytime you push a JavaScript file, you can use a wildcard pattern.
+A workflow with the following path filter will only run on `push` events that include at least one file outside the `docs` directory at the root of the repository.
```yaml
on:
push:
- paths:
- - '**.js'
+ paths-ignore:
+ - 'docs/**'
```
-### Excluding paths
+### Example: Including and excluding paths
+
+You can not use `paths` and `paths-ignore` to filter the same event in a single workflow. If you want to both include and exclude path patterns for a single event, use the `paths` filter along with the `!` character to indicate which paths should be excluded.
-You can exclude paths using two types of filters. You cannot use both of these filters for the same event in a workflow.
-- `paths-ignore` - Use the `paths-ignore` filter when you only need to exclude path names.
-- `paths` - Use the `paths` filter when you need to filter paths for positive matches and exclude paths.
+If you define a path with the `!` character, you must also define at least one path without the `!` character. If you only want to exclude paths, use `paths-ignore` instead.
-### Example: Using positive and negative patterns
+The order that you define patterns matters:
-You can exclude `paths` using the `!` character. The order that you define patterns matters:
- - A matching negative pattern (prefixed with `!`) after a positive match will exclude the path.
- - A matching positive pattern after a negative match will include the path again.
+- A matching negative pattern (prefixed with `!`) after a positive match will exclude the path.
+- A matching positive pattern after a negative match will include the path again.
This example runs anytime the `push` event includes a file in the `sub-project` directory or its subdirectories, unless the file is in the `sub-project/docs` directory. For example, a push that changed `sub-project/index.js` or `sub-project/src/index.js` will trigger a workflow run, but a push changing only `sub-project/docs/readme.md` will not.
@@ -290,6 +370,53 @@ A string identifier to associate with the secret.
A boolean specifying whether the secret must be supplied.
{% endif %}
+## `on.workflow_run.`
+
+When using the `workflow_run` event, you can specify what branches the triggering workflow must run on in order to trigger your workflow.
+
+The `branches` and `branches-ignore` filters accept glob patterns that use characters like `*`, `**`, `+`, `?`, `!` and others to match more than one branch name. If a name contains any of these characters and you want a literal match, you need to *escape* each of these special characters with `\`. For more information about glob patterns, see the "[Filter pattern cheat sheet](#filter-pattern-cheat-sheet)."
+
+For example, a workflow with the following trigger will only run when the workflow named `Build` runs on a branch whose name starts with `releases/`:
+
+```yaml
+on:
+ workflow_run:
+ workflows: ["Build"]
+ types: [requested]
+ branches:
+ - 'releases/**'
+```
+
+A workflow with the following trigger will only run when the workflow named `Build` runs on a branch that is not named `canary`:
+
+```yaml
+on:
+ workflow_run:
+ workflows: ["Build"]
+ types: [requested]
+ branches-ignore:
+ - "canary"
+```
+
+You cannot use both the `branches` and `branches-ignore` filters for the same event in a workflow. If you want to both include and exclude branch patterns for a single event, use the `branches` filter along with the `!` character to indicate which branches should be excluded.
+
+The order that you define patterns matters.
+
+- A matching negative pattern (prefixed with `!`) after a positive match will exclude the branch.
+- A matching positive pattern after a negative match will include the branch again.
+
+For example, a workflow with the following trigger will run when the workflow named `Build` runs on a branch that is named `releases/10` or `releases/beta/mona` but will not `releases/10-alpha`, `releases/beta/3-alpha`, or `main`.
+
+```yaml
+on:
+ workflow_run:
+ workflows: ["Build"]
+ types: [requested]
+ branches:
+ - 'releases/**'
+ - '!releases/**-alpha'
+```
+
## `on.workflow_dispatch.inputs`
When using the `workflow_dispatch` event, you can optionally specify inputs that are passed to the workflow.
@@ -1541,7 +1668,7 @@ The characters `*`, `[`, and `!` are special characters in YAML. If you start a
- **/README.md
```
-For more information about branch, tag, and path filter syntax, see "[`on..`](#onpushpull_requestbranchestags)" and "[`on..paths`](#onpushpull_requestpaths)."
+For more information about branch, tag, and path filter syntax, see "[`on..`](#onpushbranchestagsbranches-ignoretags-ignore)", "[`on..`](#onpull_requestpull_request_targetbranchesbranches-ignore)", and "[`on..paths`](#onpushpull_requestpull_request_targetpathspaths-ignore)."
### Patterns to match branches and tags
diff --git a/content/actions/migrating-to-github-actions/migrating-from-jenkins-to-github-actions.md b/content/actions/migrating-to-github-actions/migrating-from-jenkins-to-github-actions.md
index dba3e382867e..09e50c0b4533 100644
--- a/content/actions/migrating-to-github-actions/migrating-from-jenkins-to-github-actions.md
+++ b/content/actions/migrating-to-github-actions/migrating-from-jenkins-to-github-actions.md
@@ -64,7 +64,7 @@ Jenkins uses directives to manage _Declarative Pipelines_. These directives defi
| [`environment`](https://jenkins.io/doc/book/pipeline/syntax/#environment) | [`jobs..env`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#env)
[`jobs..steps[*].env`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepsenv) |
| [`options`](https://jenkins.io/doc/book/pipeline/syntax/#parameters) | [`jobs..strategy`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idstrategy)
[`jobs..strategy.fail-fast`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idstrategyfail-fast)
[`jobs..timeout-minutes`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idtimeout-minutes) |
| [`parameters`](https://jenkins.io/doc/book/pipeline/syntax/#parameters) | [`inputs`](/actions/creating-actions/metadata-syntax-for-github-actions#inputs)
[`outputs`](/actions/creating-actions/metadata-syntax-for-github-actions#outputs) |
-| [`triggers`](https://jenkins.io/doc/book/pipeline/syntax/#triggers) | [`on`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#on)
[`on..types`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#onevent_nametypes)
[on..
](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#onpushpull_requestbranchestags)
[on..paths
](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#onpushpull_requestpaths) |
+| [`triggers`](https://jenkins.io/doc/book/pipeline/syntax/#triggers) | [`on`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#on)
[`on..types`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#onevent_nametypes)
[on..
](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)
[on..
](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#onpull_requestpull_request_targetbranchesbranches-ignore)
[on..paths
](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore) |
| [`triggers { upstreamprojects() }`](https://jenkins.io/doc/book/pipeline/syntax/#triggers) | [`jobs..needs`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idneeds) |
| [Jenkins cron syntax](https://jenkins.io/doc/book/pipeline/syntax/#cron-syntax) | [`on.schedule`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#onschedule) |
| [`stage`](https://jenkins.io/doc/book/pipeline/syntax/#stage) | [`jobs.`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_id)
[`jobs..name`](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idname) |
diff --git a/content/actions/migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md b/content/actions/migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md
index 2cf18968d59b..24854ba99807 100644
--- a/content/actions/migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md
+++ b/content/actions/migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md
@@ -102,7 +102,7 @@ jobs:
### Targeting specific branches
-Travis CI and {% data variables.product.prodname_actions %} both allow you to target your CI to a specific branch. For more information, see "[Workflow syntax for GitHub Actions](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestbranchestags)."
+Travis CI and {% data variables.product.prodname_actions %} both allow you to target your CI to a specific branch. For more information, see "[Workflow syntax for GitHub Actions](/actions/reference/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)."
Below is an example of the syntax for each system:
diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md
index 2122636727d3..eafbc64c0b30 100644
--- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md
+++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md
@@ -78,7 +78,7 @@ Additionally, when an `on:push` scan returns results that can be mapped to an op
The default {% data variables.product.prodname_codeql_workflow %} uses the `pull_request` event to trigger a code scan on pull requests targeted against the default branch. {% ifversion ghes %}The `pull_request` event is not triggered if the pull request was opened from a private fork.{% else %}If a pull request is from a private fork, the `pull_request` event will only be triggered if you've selected the "Run workflows from fork pull requests" option in the repository settings. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#enabling-workflows-for-private-repository-forks)."{% endif %}
-For more information about the `pull_request` event, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestbranchestags)."
+For more information about the `pull_request` event, see "[Events that trigger workflows](/actions/learn-github-actions/events-that-trigger-workflows#pull_request)."
If you scan pull requests, then the results appear as alerts in a pull request check. For more information, see "[Triaging code scanning alerts in pull requests](/code-security/secure-coding/triaging-code-scanning-alerts-in-pull-requests)."
@@ -126,7 +126,7 @@ on:
{% endnote %}
-For more information about using `on:pull_request:paths-ignore` and `on:pull_request:paths` to determine when a workflow will run for a pull request, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpaths)."
+For more information about using `on:pull_request:paths-ignore` and `on:pull_request:paths` to determine when a workflow will run for a pull request, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)."
### Scanning on a schedule
@@ -466,7 +466,7 @@ paths-ignore:
**Note**:
-* The `paths` and `paths-ignore` keywords, used in the context of the {% data variables.product.prodname_code_scanning %} configuration file, should not be confused with the same keywords when used for `on..paths` in a workflow. When they are used to modify `on.` in a workflow, they determine whether the actions will be run when someone modifies code in the specified directories. For more information, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpaths)."
+* The `paths` and `paths-ignore` keywords, used in the context of the {% data variables.product.prodname_code_scanning %} configuration file, should not be confused with the same keywords when used for `on..paths` in a workflow. When they are used to modify `on.` in a workflow, they determine whether the actions will be run when someone modifies code in the specified directories. For more information, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)."
* The filter pattern characters `?`, `+`, `[`, `]`, and `!` are not supported and will be matched literally.
* `**` characters can only be at the start or end of a line, or surrounded by slashes, and you can't mix `**` and other characters. For example, `foo/**`, `**/foo`, and `foo/**/bar` are all allowed syntax, but `**foo` isn't. However you can use single stars along with other characters, as shown in the example. You'll need to quote anything that contains a `*` character.
@@ -474,7 +474,7 @@ paths-ignore:
For compiled languages, if you want to limit {% data variables.product.prodname_code_scanning %} to specific directories in your project, you must specify appropriate build steps in the workflow. The commands you need to use to exclude a directory from the build will depend on your build system. For more information, see "[Configuring the {% data variables.product.prodname_codeql %} workflow for compiled languages](/code-security/secure-coding/configuring-the-codeql-workflow-for-compiled-languages#adding-build-steps-for-a-compiled-language)."
-You can quickly analyze small portions of a monorepo when you modify code in specific directories. You'll need to both exclude directories in your build steps and use the `paths-ignore` and `paths` keywords for [`on.`](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpaths) in your workflow.
+You can quickly analyze small portions of a monorepo when you modify code in specific directories. You'll need to both exclude directories in your build steps and use the `paths-ignore` and `paths` keywords for [`on.`](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore) in your workflow.
### Example configuration files
diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/troubleshooting-the-codeql-workflow.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/troubleshooting-the-codeql-workflow.md
index 92f3ba7c4844..f510f5250994 100644
--- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/troubleshooting-the-codeql-workflow.md
+++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/troubleshooting-the-codeql-workflow.md
@@ -180,7 +180,7 @@ The default {% data variables.product.prodname_codeql_workflow %} uses a build m
Analysis time is typically proportional to the amount of code being analyzed. You can reduce the analysis time by reducing the amount of code being analyzed at once, for example, by excluding test code, or breaking analysis into multiple workflows that analyze only a subset of your code at a time.
-For compiled languages like Java, C, C++, and C#, {% data variables.product.prodname_codeql %} analyzes all of the code which was built during the workflow run. To limit the amount of code being analyzed, build only the code which you wish to analyze by specifying your own build steps in a `run` block. You can combine specifying your own build steps with using the `paths` or `paths-ignore` filters on the `pull_request` and `push` events to ensure that your workflow only runs when specific code is changed. For more information, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpaths)."
+For compiled languages like Java, C, C++, and C#, {% data variables.product.prodname_codeql %} analyzes all of the code which was built during the workflow run. To limit the amount of code being analyzed, build only the code which you wish to analyze by specifying your own build steps in a `run` block. You can combine specifying your own build steps with using the `paths` or `paths-ignore` filters on the `pull_request` and `push` events to ensure that your workflow only runs when specific code is changed. For more information, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore)."
For languages like Go, JavaScript, Python, and TypeScript, that {% data variables.product.prodname_codeql %} analyzes without compiling the source code, you can specify additional configuration options to limit the amount of code to analyze. For more information, see "[Specifying directories to scan](/code-security/secure-coding/configuring-code-scanning#specifying-directories-to-scan)."
diff --git a/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md b/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md
index f98ec58b617e..4a8e7f5131ce 100644
--- a/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md
+++ b/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md
@@ -240,7 +240,7 @@ Webhook events are triggered based on the specificity of the domain you register
{% note %}
-**Note:** You will not receive a webhook for this event when you push more than three tags at once.
+**Note:** You will not receive a webhook for this event when you create more than three tags at once.
{% endnote %}
@@ -382,7 +382,7 @@ Activity related to a discussion. For more information, see the "[Using the Grap
Key | Type | Description
----|------|-------------
-`action` |`string` | The action performed. Can be `created`, `edited`, `deleted`, `pinned`, `unpinned`, `locked`, `unlocked`, `transferred`, `category_changed`, `answered`, or `unanswered`.
+`action` |`string` | The action performed. Can be `created`, `edited`, `deleted`, `pinned`, `unpinned`, `locked`, `unlocked`, `transferred`, `category_changed`, `answered`, `unanswered`, `labeled`, or `unlabeled`.
{% data reusables.webhooks.discussion_desc %}
{% data reusables.webhooks.repo_desc_graphql %}
{% data reusables.webhooks.org_desc_graphql %}
@@ -856,9 +856,9 @@ Key | Type | Description
{{ webhookPayloadsForCurrentVersion.ping }}
-## project_card
+## project
-{% data reusables.webhooks.project_card_short_desc %}
+{% data reusables.webhooks.project_short_desc %}
### Availability
@@ -866,9 +866,17 @@ Key | Type | Description
- Organization webhooks
- {% data variables.product.prodname_github_apps %} with the `repository_projects` or `organization_projects` permission
+{% ifversion fpt or ghec %}
+{% note %}
+
+**Note**: This event does not occur for Projects (beta).
+
+{% endnote %}
+{% endif %}
+
### Webhook payload object
-{% data reusables.webhooks.project_card_properties %}
+{% data reusables.webhooks.project_properties %}
{% data reusables.webhooks.repo_desc %}
{% data reusables.webhooks.org_desc %}
{% data reusables.webhooks.app_desc %}
@@ -876,11 +884,13 @@ Key | Type | Description
### Webhook payload example
-{{ webhookPayloadsForCurrentVersion.project_card.created }}
+{{ webhookPayloadsForCurrentVersion.project.created }}
-## project_column
+{% ifversion fpt or ghes or ghec %}
-{% data reusables.webhooks.project_column_short_desc %}
+## project_card
+
+{% data reusables.webhooks.project_card_short_desc %}
### Availability
@@ -888,9 +898,17 @@ Key | Type | Description
- Organization webhooks
- {% data variables.product.prodname_github_apps %} with the `repository_projects` or `organization_projects` permission
+{% ifversion fpt or ghec %}
+{% note %}
+
+**Note**: This event does not occur for Projects (beta).
+
+{% endnote %}
+{% endif %}
+
### Webhook payload object
-{% data reusables.webhooks.project_column_properties %}
+{% data reusables.webhooks.project_card_properties %}
{% data reusables.webhooks.repo_desc %}
{% data reusables.webhooks.org_desc %}
{% data reusables.webhooks.app_desc %}
@@ -898,11 +916,11 @@ Key | Type | Description
### Webhook payload example
-{{ webhookPayloadsForCurrentVersion.project_column.created }}
+{{ webhookPayloadsForCurrentVersion.project_card.created }}
-## project
+## project_column
-{% data reusables.webhooks.project_short_desc %}
+{% data reusables.webhooks.project_column_short_desc %}
### Availability
@@ -912,7 +930,7 @@ Key | Type | Description
### Webhook payload object
-{% data reusables.webhooks.project_properties %}
+{% data reusables.webhooks.project_column_properties %}
{% data reusables.webhooks.repo_desc %}
{% data reusables.webhooks.org_desc %}
{% data reusables.webhooks.app_desc %}
@@ -920,9 +938,8 @@ Key | Type | Description
### Webhook payload example
-{{ webhookPayloadsForCurrentVersion.project.created }}
+{{ webhookPayloadsForCurrentVersion.project_column.created }}
-{% ifversion fpt or ghes or ghec %}
## public
{% data reusables.webhooks.public_short_desc %}
diff --git a/content/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile.md b/content/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile.md
index 0c0435aa17cb..911ee99b091c 100644
--- a/content/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile.md
+++ b/content/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile.md
@@ -4,6 +4,8 @@ intro: You can share information about your organization by customizing your org
versions:
fpt: '*'
ghec: '*'
+ ghes: '>3.3'
+ ghae: 'issue-4749'
topics:
- Organizations
shortTitle: Customize organization profile
diff --git a/data/reusables/developer-site/pull_request_forked_repos_link.md b/data/reusables/developer-site/pull_request_forked_repos_link.md
index eb252d7654a0..6f9bd3c7db55 100644
--- a/data/reusables/developer-site/pull_request_forked_repos_link.md
+++ b/data/reusables/developer-site/pull_request_forked_repos_link.md
@@ -1,20 +1,22 @@
-#### Pull request events for forked repositories
-
-{% note %}
+#### Workflows in forked repositories
-**Note:** Workflows do not run on private base repositories when you open a pull request from a forked repository.
+Workflows don't run in forked repositories by default. You must enable GitHub Actions in the **Actions** tab of the forked repository.
-{% endnote %}
+{% data reusables.actions.forked-secrets %} The `GITHUB_TOKEN` has read-only permissions in forked repositories. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)."
-When you create a pull request from a forked repository to the base repository, {% data variables.product.prodname_dotcom %} sends the `pull_request` event to the base repository and no pull request events occur on the forked repository.
+#### Pull request events for forked repositories
-Workflows don't run on forked repositories by default. You must enable GitHub Actions in the **Actions** tab of the forked repository.
+For pull requests from a forked repository to the base repository, {% data variables.product.product_name %} sends the `pull_request`, `issue_comment`, `pull_request_review_comment`, `pull_request_review`, and `pull_request_target` events to the base repository. No pull request events occur on the forked repository.
{% ifversion fpt or ghec %}
When a first-time contributor submits a pull request to a public repository, a maintainer with write access may need to approve running workflows on the pull request. For more information, see "[Approving workflow runs from public forks](/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks)."
{% endif %}
-{% data reusables.actions.forked-secrets %} The permissions for the `GITHUB_TOKEN` in forked repositories is read-only. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)."
+{% note %}
+
+**Note:** Workflows do not run on private base repositories when you open a pull request from a forked repository.
+
+{% endnote %}
{% note %}
diff --git a/data/reusables/github-actions/actions-do-not-trigger-workflows.md b/data/reusables/github-actions/actions-do-not-trigger-workflows.md
index b7ceafcbbb22..4941d69060ea 100644
--- a/data/reusables/github-actions/actions-do-not-trigger-workflows.md
+++ b/data/reusables/github-actions/actions-do-not-trigger-workflows.md
@@ -1 +1 @@
-When you use the repository's `GITHUB_TOKEN` to perform tasks on behalf of the {% data variables.product.prodname_actions %} app, events triggered by the `GITHUB_TOKEN` will not create a new workflow run. This prevents you from accidentally creating recursive workflow runs. For example, if a workflow run pushes code using the repository's `GITHUB_TOKEN`, a new workflow will not run even when the repository contains a workflow configured to run when `push` events occur.
+When you use the repository's `GITHUB_TOKEN` to perform tasks, events triggered by the `GITHUB_TOKEN` will not create a new workflow run. This prevents you from accidentally creating recursive workflow runs. For example, if a workflow run pushes code using the repository's `GITHUB_TOKEN`, a new workflow will not run even when the repository contains a workflow configured to run when `push` events occur.
diff --git a/data/reusables/github-actions/actions-on-examples.md b/data/reusables/github-actions/actions-on-examples.md
index bb945b991c2a..c5ae5781a6a2 100644
--- a/data/reusables/github-actions/actions-on-examples.md
+++ b/data/reusables/github-actions/actions-on-examples.md
@@ -1,34 +1,75 @@
-## Example: Using a single event
+### Using a single event
+
+For example, a workflow with the following `on` value will run when a push is made to any branch in the workflow's repository:
```yaml
-# Triggered when code is pushed to any branch in a repository
on: push
```
-## Example: Using a list of events
+### Using a multiple events
+
+You can specify a single event or multiple events. For example, a workflow with the following `on` value will run when a push is made to any branch in the repository or when someone forks the repository:
+
+```yaml
+on: [push, fork]
+```
+
+If you specify multiple events, only one of those events needs to occur to trigger your workflow. If multiple triggering events for your workflow occur at the same time, multiple workflow runs will be triggered.
+
+### Using activity types
+
+Some events have activity types that give you more control over when your workflow should run.
+
+For example, the `issue_comment` event has the `created`, `edited`, and `deleted` activity types. If your workflow triggers on the `label` event, it will run whenever a label is created, edited, or deleted. If you specify the `created` activity type for the `label` event, your workflow will run when a label is created but not when a label is edited or deleted.
+
+```yaml
+on:
+ label:
+ types:
+ - created
+```
+
+If you specify multiple activity types, only one of those event activity types needs to occur to trigger your workflow. If multiple triggering event activity types for your workflow occur at the same time, multiple workflow runs will be triggered. For example, the following workflow triggers when an issue is opened or labeled. If an issue with two labels is opened, three workflow runs will start: one for the issue opened event and two for the two issue labeled events.
```yaml
-# Triggers the workflow on push or pull request events
-on: [push, pull_request]
+on:
+ issue:
+ types:
+ - opened
+ - labeled
```
-## Example: Using multiple events with activity types or configuration
+### Using filters
-If you need to specify activity types or configuration for an event, you must configure each event separately. You must append a colon (`:`) to all events, including events without configuration.
+Some events have filters that give you more control over when your workflow should run.
+
+For example, the `push` event has a `branches` filter that causes your workflow to run only when a push to a branch that matches the `branches` filter occurs, instead of when any push occurs.
```yaml
on:
- # Trigger the workflow on push or pull request,
- # but only for the main branch
push:
branches:
- main
- pull_request:
+ - 'releases/**'
+```
+
+### Using activity types and filters with multiple events
+
+If you specify activity types or filters for an event and your workflow triggers on multiple events, you must configure each event separately. You must append a colon (`:`) to all events, including events without configuration.
+
+For example, a workflow with the following `on` value will run when:
+
+- A label is created
+- A push is made to the `main` branch in the repository
+- A push is made to a {% data variables.product.prodname_pages %}-enabled branch
+
+```yaml
+on:
+ label:
+ types:
+ - created
+ push:
branches:
- main
- # Also trigger on page_build, as well as release created events
page_build:
- release:
- types: # This configuration does not affect the page_build event above
- - created
```
diff --git a/data/reusables/github-actions/branch-paths-filter.md b/data/reusables/github-actions/branch-paths-filter.md
new file mode 100644
index 000000000000..a0701b5614b3
--- /dev/null
+++ b/data/reusables/github-actions/branch-paths-filter.md
@@ -0,0 +1 @@
+If you use both the `branches` filter and the `paths` filter, the workflow will only run when both filters are satisfied.
\ No newline at end of file
diff --git a/data/reusables/repositories/actions-scheduled-workflow-example.md b/data/reusables/repositories/actions-scheduled-workflow-example.md
index 3dae8f356e62..d61c5baa10c5 100644
--- a/data/reusables/repositories/actions-scheduled-workflow-example.md
+++ b/data/reusables/repositories/actions-scheduled-workflow-example.md
@@ -1,4 +1,4 @@
-You can schedule a workflow to run at specific UTC times using [POSIX cron syntax](https://pubs.opengroup.org/onlinepubs/9699919799/utilities/crontab.html#tag_20_25_07). Scheduled workflows run on the latest commit on the default or base branch. The shortest interval you can run scheduled workflows is once every 5 minutes.
+You can schedule a workflow to run at specific UTC times using [POSIX cron syntax](https://pubs.opengroup.org/onlinepubs/9699919799/utilities/crontab.html#tag_20_25_07). Scheduled workflows run on the latest commit on the default or base branch. The shortest interval you can run scheduled workflows is once every 15 minutes.
This example triggers the workflow every day at 5:30 and 17:30 UTC:
@@ -9,3 +9,22 @@ on:
- cron: '30 5,17 * * *'
```
+
+A single workflow can be triggered by multiple `schedule` events. You can access the schedule event that triggered the workflow through the `github.event.schedule` context. This example triggers the workflow to run at 5:30 UTC every Monday-Thursday, but skips the `Not on Monday or Wednesday` step on Monday and Wednesday.
+
+```yaml
+on:
+ schedule:
+ - cron: '30 5 * * 1,3'
+ - cron: '30 5 * * 2,4'
+
+jobs:
+ test_schedule:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Not on Monday or Wednesday
+ if: github.event.schedule != '30 5 * * 1,3'
+ run: echo "This step will be skipped on Monday and Wednesday"
+ - name: Every time
+ run: echo "This step will always run"
+```
diff --git a/data/reusables/webhooks/create_short_desc.md b/data/reusables/webhooks/create_short_desc.md
index 5cf906a338d1..ce6f4d355dc5 100644
--- a/data/reusables/webhooks/create_short_desc.md
+++ b/data/reusables/webhooks/create_short_desc.md
@@ -1 +1 @@
-A Git branch or tag is created. For more information, see the "[Git data](/rest/reference/git)" REST API.
+A Git branch or tag is created. For more information, see the "[Git database](/rest/reference/git#create-a-reference)" REST API.
diff --git a/data/reusables/webhooks/delete_short_desc.md b/data/reusables/webhooks/delete_short_desc.md
index 726e68df82c3..f514958e94f6 100644
--- a/data/reusables/webhooks/delete_short_desc.md
+++ b/data/reusables/webhooks/delete_short_desc.md
@@ -1 +1 @@
-A Git branch or tag is deleted. For more information, see the "[Git data](/rest/reference/git)" REST API.
+A Git branch or tag is deleted. For more information, see the "[Git database](/rest/reference/git#delete-a-reference)" REST API.
diff --git a/data/reusables/webhooks/deployment_status_short_desc.md b/data/reusables/webhooks/deployment_status_short_desc.md
index 5c8fe4734443..0205b22199cc 100644
--- a/data/reusables/webhooks/deployment_status_short_desc.md
+++ b/data/reusables/webhooks/deployment_status_short_desc.md
@@ -1 +1 @@
-A deployment is created. {% data reusables.webhooks.action_type_desc %} For more information, see the "[deployment statuses](/rest/reference/deployments#list-deployment-statuses)" REST API.
+A deployment is created. {% data reusables.webhooks.action_type_desc %} For more information, see the "[deployments](/rest/reference/repos#deployments)" REST API.
diff --git a/data/reusables/webhooks/gollum_short_desc.md b/data/reusables/webhooks/gollum_short_desc.md
index 30491917637d..fb4c736e27a1 100644
--- a/data/reusables/webhooks/gollum_short_desc.md
+++ b/data/reusables/webhooks/gollum_short_desc.md
@@ -1 +1 @@
-A wiki page is created or updated. For more information, see the "[About wikis](/communities/documenting-your-project-with-wikis/about-wikis)".
+A wiki page is created or updated. For more information, see "[About wikis](/communities/documenting-your-project-with-wikis/about-wikis)."
diff --git a/data/reusables/webhooks/issues_short_desc.md b/data/reusables/webhooks/issues_short_desc.md
index 3edc02859faf..851a1ea93b7f 100644
--- a/data/reusables/webhooks/issues_short_desc.md
+++ b/data/reusables/webhooks/issues_short_desc.md
@@ -1 +1 @@
-Activity related to an issue. {% data reusables.webhooks.action_type_desc %} For more information, see the "[issues](/rest/reference/issues#comments)" REST API.
+Activity related to an issue. {% data reusables.webhooks.action_type_desc %} For more information, see the "[issues](/rest/reference/issues)" REST API.
diff --git a/data/reusables/webhooks/milestone_properties.md b/data/reusables/webhooks/milestone_properties.md
index 41365074dfef..2bd860e8a891 100644
--- a/data/reusables/webhooks/milestone_properties.md
+++ b/data/reusables/webhooks/milestone_properties.md
@@ -1,6 +1,6 @@
Key | Type | Description
----|------|-------------
-`action` |`string` | The action that was performed. Can be one of `created`, `closed`, `opened`, `edited`, or `deleted`.
+`action` |`string` | The action that was performed. Can be one of `created`, `closed`, `opened` (a closed milestone is re-opened), `edited`, or `deleted`.
`milestone` |`object` | The milestone itself.
`changes`|`object`| The changes to the milestone if the action was `edited`.
`changes[description][from]`|`string` | The previous version of the description if the action was `edited`.
diff --git a/data/reusables/webhooks/status_short_desc.md b/data/reusables/webhooks/status_short_desc.md
index 6d835788c978..ca8d0b1bed1b 100644
--- a/data/reusables/webhooks/status_short_desc.md
+++ b/data/reusables/webhooks/status_short_desc.md
@@ -1 +1 @@
-When the status of a Git commit changes. {% data reusables.webhooks.action_type_desc %} For more information, see the "[statuses](/rest/reference/repos#statuses)" REST API.
+When the status of a Git commit changes. For more information, see the "[statuses](/rest/reference/commits#commit-statuses)" REST API.
diff --git a/data/reusables/webhooks/workflow_run_desc.md b/data/reusables/webhooks/workflow_run_desc.md
deleted file mode 100644
index 486a20dcd1d5..000000000000
--- a/data/reusables/webhooks/workflow_run_desc.md
+++ /dev/null
@@ -1,5 +0,0 @@
-This event occurs when a workflow run is requested or completed, and allows you to execute a workflow based on the finished result of another workflow. A workflow run is triggered regardless of the result of the previous workflow.
-
-For example, if your `pull_request` workflow generates build artifacts, you can create a new workflow that uses `workflow_run` to analyze the results and add a comment to the original pull request.
-
-The workflow started by the `workflow_run` event is able to access secrets and write tokens, even if the previous workflow was not. This is useful in cases where the previous workflow is intentionally not privileged, but you need to take a privileged action in a later workflow.
diff --git a/data/reusables/webhooks/workflow_run_properties.md b/data/reusables/webhooks/workflow_run_properties.md
index 1ff99e14f5a1..bd5001c6eb7f 100644
--- a/data/reusables/webhooks/workflow_run_properties.md
+++ b/data/reusables/webhooks/workflow_run_properties.md
@@ -1,4 +1,4 @@
Key | Type | Description
----|------|-------------
`action`|`string` | The action that was performed. Can be one of `requested` or `completed`.
-`workflow_run`| `object` | The workflow run. Many `workflow_run` keys, such as `head_branch`, `conclusion`, and `pull_requests` are the same as those in a [`check_suite`](#check_suite) object.
+`workflow_run`| `object` | The workflow run. Includes information such as `artifacts_url`, `check_suite_id`, `conclusion`, `head_branch`, and `head_sha`.
diff --git a/lib/webhooks/static/dotcom/workflow_dispatch.payload.json b/lib/webhooks/static/dotcom/workflow_dispatch.payload.json
index 0b4f17741f0b..55f3a28d67df 100644
--- a/lib/webhooks/static/dotcom/workflow_dispatch.payload.json
+++ b/lib/webhooks/static/dotcom/workflow_dispatch.payload.json
@@ -2,133 +2,138 @@
"inputs": {
"name": "Mona the Octocat"
},
- "ref": "refs/heads/master",
+ "organization": {
+ "avatar_url": "https://avatars.githubusercontent.com/u/6811672?v=4",
+ "description": null,
+ "events_url": "https://api.github.com/orgs/octo-org/events",
+ "hooks_url": "https://api.github.com/orgs/octo-org/hooks",
+ "id": 79927191,
+ "issues_url": "https://api.github.com/orgs/octo-org/issues",
+ "login": "octo-org",
+ "members_url": "https://api.github.com/orgs/octo-org/members{/member}",
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI",
+ "public_members_url": "https://api.github.com/orgs/octo-org/public_members{/member}",
+ "repos_url": "https://api.github.com/orgs/octo-org/repos",
+ "url": "https://api.github.com/orgs/octo-org"
+ },
+ "ref": "refs/heads/main",
"repository": {
- "id": 17273051,
- "node_id": "MDEwOlJlcG9zaXRvcnkxNzI3MzA1MQ==",
- "name": "octo-repo",
+ "allow_forking": true,
+ "archive_url": "https://api.github.com/repos/octo-org/octo-repo/{archive_format}{/ref}",
+ "archived": false,
+ "assignees_url": "https://api.github.com/repos/octo-org/octo-repo/assignees{/user}",
+ "blobs_url": "https://api.github.com/repos/octo-org/octo-repo/git/blobs{/sha}",
+ "branches_url": "https://api.github.com/repos/octo-org/octo-repo/branches{/branch}",
+ "clone_url": "https://github.com/octo-org/octo-repo.git",
+ "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo/collaborators{/collaborator}",
+ "comments_url": "https://api.github.com/repos/octo-org/octo-repo/comments{/number}",
+ "commits_url": "https://api.github.com/repos/octo-org/octo-repo/commits{/sha}",
+ "compare_url": "https://api.github.com/repos/octo-org/octo-repo/compare/{base}...{head}",
+ "contents_url": "https://api.github.com/repos/octo-org/octo-repo/contents/{+path}",
+ "contributors_url": "https://api.github.com/repos/octo-org/octo-repo/contributors",
+ "created_at": "2021-08-16T21:34:28Z",
+ "default_branch": "main",
+ "deployments_url": "https://api.github.com/repos/octo-org/octo-repo/deployments",
+ "description": null,
+ "disabled": false,
+ "downloads_url": "https://api.github.com/repos/octo-org/octo-repo/downloads",
+ "events_url": "https://api.github.com/repos/octo-org/octo-repo/events",
+ "fork": false,
+ "forks": 1,
+ "forks_count": 1,
+ "forks_url": "https://api.github.com/repos/octo-org/octo-repo/forks",
"full_name": "octo-org/octo-repo",
- "private": true,
+ "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo/git/commits{/sha}",
+ "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo/git/refs{/sha}",
+ "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo/git/tags{/sha}",
+ "git_url": "git://github.com/octo-org/octo-repo.git",
+ "has_downloads": true,
+ "has_issues": true,
+ "has_pages": false,
+ "has_projects": true,
+ "has_wiki": true,
+ "homepage": null,
+ "hooks_url": "https://api.github.com/repos/octo-org/octo-repo/hooks",
+ "html_url": "https://github.com/octo-org/octo-repo",
+ "id": 6811672,
+ "is_template": false,
+ "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo/issues/comments{/number}",
+ "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo/issues/events{/number}",
+ "issues_url": "https://api.github.com/repos/octo-org/octo-repo/issues{/number}",
+ "keys_url": "https://api.github.com/repos/octo-org/octo-repo/keys{/key_id}",
+ "labels_url": "https://api.github.com/repos/octo-org/octo-repo/labels{/name}",
+ "language": null,
+ "languages_url": "https://api.github.com/repos/octo-org/octo-repo/languages",
+ "license": null,
+ "merges_url": "https://api.github.com/repos/octo-org/octo-repo/merges",
+ "milestones_url": "https://api.github.com/repos/octo-org/octo-repo/milestones{/number}",
+ "mirror_url": null,
+ "name": "octo-repo",
+ "node_id": "MDEwOlJlcG9zaXRvcnkzOTY5ODA4MTI=",
+ "notifications_url": "https://api.github.com/repos/octo-org/octo-repo/notifications{?since,all,participating}",
+ "open_issues": 97,
+ "open_issues_count": 97,
"owner": {
- "login": "octo-org",
- "id": 6811672,
- "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=",
- "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4",
- "gravatar_id": "",
- "url": "https://api.github.com/users/octo-org",
- "html_url": "https://github.com/octo-org",
+ "avatar_url": "https://avatars.githubusercontent.com/u/6811672?v=4",
+ "events_url": "https://api.github.com/users/octo-org/events{/privacy}",
"followers_url": "https://api.github.com/users/octo-org/followers",
"following_url": "https://api.github.com/users/octo-org/following{/other_user}",
"gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}",
- "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}",
- "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions",
+ "gravatar_id": "",
+ "html_url": "https://github.com/octo-org",
+ "id": 79927191,
+ "login": "octo-org",
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI9",
"organizations_url": "https://api.github.com/users/octo-org/orgs",
- "repos_url": "https://api.github.com/users/octo-org/repos",
- "events_url": "https://api.github.com/users/octo-org/events{/privacy}",
"received_events_url": "https://api.github.com/users/octo-org/received_events",
+ "repos_url": "https://api.github.com/users/octo-org/repos",
+ "site_admin": false,
+ "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions",
"type": "Organization",
- "site_admin": false
+ "url": "https://api.github.com/users/octo-org"
},
- "html_url": "https://github.com/octo-org/octo-repo",
- "description": "My first repo on GitHub!",
- "fork": false,
- "url": "https://api.github.com/repos/octo-org/octo-repo",
- "forks_url": "https://api.github.com/repos/octo-org/octo-repo/forks",
- "keys_url": "https://api.github.com/repos/octo-org/octo-repo/keys{/key_id}",
- "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo/collaborators{/collaborator}",
- "teams_url": "https://api.github.com/repos/octo-org/octo-repo/teams",
- "hooks_url": "https://api.github.com/repos/octo-org/octo-repo/hooks",
- "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo/issues/events{/number}",
- "events_url": "https://api.github.com/repos/octo-org/octo-repo/events",
- "assignees_url": "https://api.github.com/repos/octo-org/octo-repo/assignees{/user}",
- "branches_url": "https://api.github.com/repos/octo-org/octo-repo/branches{/branch}",
- "tags_url": "https://api.github.com/repos/octo-org/octo-repo/tags",
- "blobs_url": "https://api.github.com/repos/octo-org/octo-repo/git/blobs{/sha}",
- "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo/git/tags{/sha}",
- "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo/git/refs{/sha}",
- "trees_url": "https://api.github.com/repos/octo-org/octo-repo/git/trees{/sha}",
- "statuses_url": "https://api.github.com/repos/octo-org/octo-repo/statuses/{sha}",
- "languages_url": "https://api.github.com/repos/octo-org/octo-repo/languages",
- "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo/stargazers",
- "contributors_url": "https://api.github.com/repos/octo-org/octo-repo/contributors",
- "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo/subscribers",
- "subscription_url": "https://api.github.com/repos/octo-org/octo-repo/subscription",
- "commits_url": "https://api.github.com/repos/octo-org/octo-repo/commits{/sha}",
- "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo/git/commits{/sha}",
- "comments_url": "https://api.github.com/repos/octo-org/octo-repo/comments{/number}",
- "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo/issues/comments{/number}",
- "contents_url": "https://api.github.com/repos/octo-org/octo-repo/contents/{+path}",
- "compare_url": "https://api.github.com/repos/octo-org/octo-repo/compare/{base}...{head}",
- "merges_url": "https://api.github.com/repos/octo-org/octo-repo/merges",
- "archive_url": "https://api.github.com/repos/octo-org/octo-repo/{archive_format}{/ref}",
- "downloads_url": "https://api.github.com/repos/octo-org/octo-repo/downloads",
- "issues_url": "https://api.github.com/repos/octo-org/octo-repo/issues{/number}",
+ "private": false,
"pulls_url": "https://api.github.com/repos/octo-org/octo-repo/pulls{/number}",
- "milestones_url": "https://api.github.com/repos/octo-org/octo-repo/milestones{/number}",
- "notifications_url": "https://api.github.com/repos/octo-org/octo-repo/notifications{?since,all,participating}",
- "labels_url": "https://api.github.com/repos/octo-org/octo-repo/labels{/name}",
+ "pushed_at": "2022-01-07T21:57:21Z",
"releases_url": "https://api.github.com/repos/octo-org/octo-repo/releases{/id}",
- "deployments_url": "https://api.github.com/repos/octo-org/octo-repo/deployments",
- "created_at": "2014-02-28T02:42:51Z",
- "updated_at": "2018-10-10T15:58:51Z",
- "pushed_at": "2018-10-10T15:58:47Z",
- "git_url": "git://github.com/octo-org/octo-repo.git",
+ "size": 144,
"ssh_url": "git@github.com:octo-org/octo-repo.git",
- "clone_url": "https://github.com/octo-org/octo-repo.git",
- "svn_url": "https://github.com/octo-org/octo-repo",
- "homepage": "",
- "size": 59,
"stargazers_count": 0,
- "watchers_count": 0,
- "language": "JavaScript",
- "has_issues": true,
- "has_projects": true,
- "has_downloads": true,
- "has_wiki": true,
- "has_pages": false,
- "forks_count": 1,
- "mirror_url": null,
- "archived": false,
- "open_issues_count": 23,
- "license": null,
- "forks": 1,
- "open_issues": 23,
+ "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo/stargazers",
+ "statuses_url": "https://api.github.com/repos/octo-org/octo-repo/statuses/{sha}",
+ "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo/subscribers",
+ "subscription_url": "https://api.github.com/repos/octo-org/octo-repo/subscription",
+ "svn_url": "https://github.com/octo-org/octo-repo",
+ "tags_url": "https://api.github.com/repos/octo-org/octo-repo/tags",
+ "teams_url": "https://api.github.com/repos/octo-org/octo-repo/teams",
+ "topics": [],
+ "trees_url": "https://api.github.com/repos/octo-org/octo-repo/git/trees{/sha}",
+ "updated_at": "2022-01-07T21:57:24Z",
+ "url": "https://api.github.com/repos/octo-org/octo-repo",
+ "visibility": "public",
"watchers": 0,
- "default_branch": "master"
- },
- "organization": {
- "login": "octo-org",
- "id": 6811672,
- "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=",
- "url": "https://api.github.com/orgs/octo-org",
- "repos_url": "https://api.github.com/orgs/octo-org/repos",
- "events_url": "https://api.github.com/orgs/octo-org/events",
- "hooks_url": "https://api.github.com/orgs/octo-org/hooks",
- "issues_url": "https://api.github.com/orgs/octo-org/issues",
- "members_url": "https://api.github.com/orgs/octo-org/members{/member}",
- "public_members_url": "https://api.github.com/orgs/octo-org/public_members{/member}",
- "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4",
- "description": "Working better together!"
+ "watchers_count": 0
},
"sender": {
- "login": "Codertocat",
- "id": 21031067,
- "node_id": "MDQ6VXNlcjIxMDMxMDY3",
- "avatar_url": "https://avatars1.githubusercontent.com/u/21031067?v=4",
+ "avatar_url": "https://avatars.githubusercontent.com/u/25328854?v=4",
+ "events_url": "https://api.github.com/users/octocat/events{/privacy}",
+ "followers_url": "https://api.github.com/users/octocat/followers",
+ "following_url": "https://api.github.com/users/octocat/following{/other_user}",
+ "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}",
"gravatar_id": "",
- "url": "https://api.github.com/users/Codertocat",
- "html_url": "https://github.com/Codertocat",
- "followers_url": "https://api.github.com/users/Codertocat/followers",
- "following_url": "https://api.github.com/users/Codertocat/following{/other_user}",
- "gists_url": "https://api.github.com/users/Codertocat/gists{/gist_id}",
- "starred_url": "https://api.github.com/users/Codertocat/starred{/owner}{/repo}",
- "subscriptions_url": "https://api.github.com/users/Codertocat/subscriptions",
- "organizations_url": "https://api.github.com/users/Codertocat/orgs",
- "repos_url": "https://api.github.com/users/Codertocat/repos",
- "events_url": "https://api.github.com/users/Codertocat/events{/privacy}",
- "received_events_url": "https://api.github.com/users/Codertocat/received_events",
+ "html_url": "https://github.com/octocat",
+ "id": 25328754,
+ "login": "octocat",
+ "node_id": "MDQ6VXNlcjI1MzI4ODU0",
+ "organizations_url": "https://api.github.com/users/octocat/orgs",
+ "received_events_url": "https://api.github.com/users/octocat/received_events",
+ "repos_url": "https://api.github.com/users/octocat/repos",
+ "site_admin": true,
+ "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/octocat/subscriptions",
"type": "User",
- "site_admin": false
+ "url": "https://api.github.com/users/octocat"
},
"workflow": ".github/workflows/hello-world-workflow.yml"
}
\ No newline at end of file
diff --git a/lib/webhooks/static/dotcom/workflow_run.payload.json b/lib/webhooks/static/dotcom/workflow_run.payload.json
index 0151f44ce57a..6ec2c04adb89 100644
--- a/lib/webhooks/static/dotcom/workflow_run.payload.json
+++ b/lib/webhooks/static/dotcom/workflow_run.payload.json
@@ -127,5 +127,194 @@
"subscriptions_url": "https://api.github.com/users/Codertocat/subscriptions",
"type": "User",
"url": "https://api.github.com/users/Codertocat"
+ },
+ "workflow": {
+ "badge_url": "https://github.com/octo-org/octo-repo/workflows/Manually%20triggered%20workflow/badge.svg",
+ "created_at": "2021-12-15T20:11:38.000Z",
+ "html_url": "https://github.com/octo-org/octo-repo/blob/main/.github/workflows/syntax.yml",
+ "id": 16340987,
+ "name": "Manually triggered workflow",
+ "node_id": "W_kwDOF6lyTM4A-Vf7",
+ "path": ".github/workflows/syntax.yml",
+ "state": "active",
+ "updated_at": "2021-12-16T18:40:41.000Z",
+ "url": "https://api.github.com/repos/octo-org/octo-repo/actions/workflows/16340987"
+ },
+ "workflow_run": {
+ "artifacts_url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/1589141559/artifacts",
+ "cancel_url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/1589141559/cancel",
+ "check_suite_id": 4683454167,
+ "check_suite_node_id": "CS_kwDOF6lyTM8AAAABFyfW1w",
+ "check_suite_url": "https://api.github.com/repos/octo-org/octo-repo/check-suites/4683454167",
+ "conclusion": null,
+ "created_at": "2021-12-16T19:37:22Z",
+ "event": "workflow_dispatch",
+ "head_branch": "main",
+ "head_commit": {
+ "author": {
+ "email": "octocat@github.com",
+ "name": "Mona Lisa"
+ },
+ "committer": {
+ "email": "noreply@github.com",
+ "name": "GitHub"
+ },
+ "id": "5779607b49aab1200488439f02372c57b4f75444",
+ "message": "Update milestone-created.yml",
+ "timestamp": "2021-12-16T19:37:14Z",
+ "tree_id": "8181cee091cf9627ac07c3cc4b94c015a1d56706"
+ },
+ "head_repository": {
+ "archive_url": "https://api.github.com/repos/octo-org/octo-repo/{archive_format}{/ref}",
+ "assignees_url": "https://api.github.com/repos/octo-org/octo-repo/assignees{/user}",
+ "blobs_url": "https://api.github.com/repos/octo-org/octo-repo/git/blobs{/sha}",
+ "branches_url": "https://api.github.com/repos/octo-org/octo-repo/branches{/branch}",
+ "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo/collaborators{/collaborator}",
+ "comments_url": "https://api.github.com/repos/octo-org/octo-repo/comments{/number}",
+ "commits_url": "https://api.github.com/repos/octo-org/octo-repo/commits{/sha}",
+ "compare_url": "https://api.github.com/repos/octo-org/octo-repo/compare/{base}...{head}",
+ "contents_url": "https://api.github.com/repos/octo-org/octo-repo/contents/{+path}",
+ "contributors_url": "https://api.github.com/repos/octo-org/octo-repo/contributors",
+ "deployments_url": "https://api.github.com/repos/octo-org/octo-repo/deployments",
+ "description": null,
+ "downloads_url": "https://api.github.com/repos/octo-org/octo-repo/downloads",
+ "events_url": "https://api.github.com/repos/octo-org/octo-repo/events",
+ "fork": false,
+ "forks_url": "https://api.github.com/repos/octo-org/octo-repo/forks",
+ "full_name": "octo-org/octo-repo",
+ "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo/git/commits{/sha}",
+ "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo/git/refs{/sha}",
+ "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo/git/tags{/sha}",
+ "hooks_url": "https://api.github.com/repos/octo-org/octo-repo/hooks",
+ "html_url": "https://github.com/octo-org/octo-repo",
+ "id": 396980812,
+ "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo/issues/comments{/number}",
+ "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo/issues/events{/number}",
+ "issues_url": "https://api.github.com/repos/octo-org/octo-repo/issues{/number}",
+ "keys_url": "https://api.github.com/repos/octo-org/octo-repo/keys{/key_id}",
+ "labels_url": "https://api.github.com/repos/octo-org/octo-repo/labels{/name}",
+ "languages_url": "https://api.github.com/repos/octo-org/octo-repo/languages",
+ "merges_url": "https://api.github.com/repos/octo-org/octo-repo/merges",
+ "milestones_url": "https://api.github.com/repos/octo-org/octo-repo/milestones{/number}",
+ "name": "octo-repo",
+ "node_id": "MDEwOlJlcG9zaXRvcnkzOTY5ODA4MTI=",
+ "notifications_url": "https://api.github.com/repos/octo-org/octo-repo/notifications{?since,all,participating}",
+ "owner": {
+ "avatar_url": "https://avatars.githubusercontent.com/u/79927191?v=4",
+ "events_url": "https://api.github.com/users/octo-org/events{/privacy}",
+ "followers_url": "https://api.github.com/users/octo-org/followers",
+ "following_url": "https://api.github.com/users/octo-org/following{/other_user}",
+ "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}",
+ "gravatar_id": "",
+ "html_url": "https://github.com/octo-org",
+ "id": 79927191,
+ "login": "octo-org",
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjc5OTI3MTkx",
+ "organizations_url": "https://api.github.com/users/octo-org/orgs",
+ "received_events_url": "https://api.github.com/users/octo-org/received_events",
+ "repos_url": "https://api.github.com/users/octo-org/repos",
+ "site_admin": false,
+ "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions",
+ "type": "Organization",
+ "url": "https://api.github.com/users/octo-org"
+ },
+ "private": true,
+ "pulls_url": "https://api.github.com/repos/octo-org/octo-repo/pulls{/number}",
+ "releases_url": "https://api.github.com/repos/octo-org/octo-repo/releases{/id}",
+ "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo/stargazers",
+ "statuses_url": "https://api.github.com/repos/octo-org/octo-repo/statuses/{sha}",
+ "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo/subscribers",
+ "subscription_url": "https://api.github.com/repos/octo-org/octo-repo/subscription",
+ "tags_url": "https://api.github.com/repos/octo-org/octo-repo/tags",
+ "teams_url": "https://api.github.com/repos/octo-org/octo-repo/teams",
+ "trees_url": "https://api.github.com/repos/octo-org/octo-repo/git/trees{/sha}",
+ "url": "https://api.github.com/repos/octo-org/octo-repo"
+ },
+ "head_sha": "5779607b49aab1200488439f02372c57b4f75444",
+ "html_url": "https://github.com/octo-org/octo-repo/actions/runs/1589141559",
+ "id": 1589141559,
+ "jobs_url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/1589141559/jobs",
+ "logs_url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/1589141559/logs",
+ "name": "Manually triggered workflow",
+ "node_id": "WFR_kwLOF6lyTM5euGA3",
+ "previous_attempt_url": null,
+ "pull_requests": [],
+ "repository": {
+ "archive_url": "https://api.github.com/repos/octo-org/octo-repo/{archive_format}{/ref}",
+ "assignees_url": "https://api.github.com/repos/octo-org/octo-repo/assignees{/user}",
+ "blobs_url": "https://api.github.com/repos/octo-org/octo-repo/git/blobs{/sha}",
+ "branches_url": "https://api.github.com/repos/octo-org/octo-repo/branches{/branch}",
+ "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo/collaborators{/collaborator}",
+ "comments_url": "https://api.github.com/repos/octo-org/octo-repo/comments{/number}",
+ "commits_url": "https://api.github.com/repos/octo-org/octo-repo/commits{/sha}",
+ "compare_url": "https://api.github.com/repos/octo-org/octo-repo/compare/{base}...{head}",
+ "contents_url": "https://api.github.com/repos/octo-org/octo-repo/contents/{+path}",
+ "contributors_url": "https://api.github.com/repos/octo-org/octo-repo/contributors",
+ "deployments_url": "https://api.github.com/repos/octo-org/octo-repo/deployments",
+ "description": null,
+ "downloads_url": "https://api.github.com/repos/octo-org/octo-repo/downloads",
+ "events_url": "https://api.github.com/repos/octo-org/octo-repo/events",
+ "fork": false,
+ "forks_url": "https://api.github.com/repos/octo-org/octo-repo/forks",
+ "full_name": "octo-org/octo-repo",
+ "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo/git/commits{/sha}",
+ "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo/git/refs{/sha}",
+ "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo/git/tags{/sha}",
+ "hooks_url": "https://api.github.com/repos/octo-org/octo-repo/hooks",
+ "html_url": "https://github.com/octo-org/octo-repo",
+ "id": 396980812,
+ "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo/issues/comments{/number}",
+ "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo/issues/events{/number}",
+ "issues_url": "https://api.github.com/repos/octo-org/octo-repo/issues{/number}",
+ "keys_url": "https://api.github.com/repos/octo-org/octo-repo/keys{/key_id}",
+ "labels_url": "https://api.github.com/repos/octo-org/octo-repo/labels{/name}",
+ "languages_url": "https://api.github.com/repos/octo-org/octo-repo/languages",
+ "merges_url": "https://api.github.com/repos/octo-org/octo-repo/merges",
+ "milestones_url": "https://api.github.com/repos/octo-org/octo-repo/milestones{/number}",
+ "name": "octo-repo",
+ "node_id": "MDEwOlJlcG9zaXRvcnkzOTY5ODA4MTI=",
+ "notifications_url": "https://api.github.com/repos/octo-org/octo-repo/notifications{?since,all,participating}",
+ "owner": {
+ "avatar_url": "https://avatars.githubusercontent.com/u/79927191?v=4",
+ "events_url": "https://api.github.com/users/octo-org/events{/privacy}",
+ "followers_url": "https://api.github.com/users/octo-org/followers",
+ "following_url": "https://api.github.com/users/octo-org/following{/other_user}",
+ "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}",
+ "gravatar_id": "",
+ "html_url": "https://github.com/octo-org",
+ "id": 79927191,
+ "login": "octo-org",
+ "node_id": "MDEyOk9yZ2FuaXphdGlvbjc5OTI3MTkx",
+ "organizations_url": "https://api.github.com/users/octo-org/orgs",
+ "received_events_url": "https://api.github.com/users/octo-org/received_events",
+ "repos_url": "https://api.github.com/users/octo-org/repos",
+ "site_admin": false,
+ "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions",
+ "type": "Organization",
+ "url": "https://api.github.com/users/octo-org"
+ },
+ "private": true,
+ "pulls_url": "https://api.github.com/repos/octo-org/octo-repo/pulls{/number}",
+ "releases_url": "https://api.github.com/repos/octo-org/octo-repo/releases{/id}",
+ "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo/stargazers",
+ "statuses_url": "https://api.github.com/repos/octo-org/octo-repo/statuses/{sha}",
+ "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo/subscribers",
+ "subscription_url": "https://api.github.com/repos/octo-org/octo-repo/subscription",
+ "tags_url": "https://api.github.com/repos/octo-org/octo-repo/tags",
+ "teams_url": "https://api.github.com/repos/octo-org/octo-repo/teams",
+ "trees_url": "https://api.github.com/repos/octo-org/octo-repo/git/trees{/sha}",
+ "url": "https://api.github.com/repos/octo-org/octo-repo"
+ },
+ "rerun_url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/1589141559/rerun",
+ "run_attempt": 1,
+ "run_number": 36,
+ "run_started_at": "2021-12-16T19:37:22Z",
+ "status": "queued",
+ "updated_at": "2021-12-16T19:37:22Z",
+ "url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/1589141559",
+ "workflow_id": 16340987,
+ "workflow_url": "https://api.github.com/repos/octo-org/octo-repo/actions/workflows/16340987"
}
}
\ No newline at end of file
diff --git a/translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions.md b/translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions.md
index 23699310abbb..05c36cf9fad6 100644
--- a/translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions.md
+++ b/translations/zh-CN/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions.md
@@ -24,7 +24,7 @@ shortTitle: 管理您的订阅
## 选择如何取消订阅
-要快速取消关注(或取消订阅)仓库,请转到“Watched repositories(已关注仓库)”页面,您可以在该页面查看您当前关注的所有仓库。 更多信息请参阅“[取消关注仓库](#unwatch-a-repository)”。
+To unwatch (or unsubscribe from) repositories quickly, navigate to [github.com/watching](https://github.com/watching) to see all the repositories you're following. For more information, see "[Unwatching repositories](#unwatching-repositories)."
要同时取消订阅多个通知,您可以使用收件箱或订阅页面上取消订阅。 相比“Watched repositories(已关注仓库)”页面,这两个选项可提供有关您的订阅的更多上下文。
@@ -55,19 +55,32 @@ shortTitle: 管理您的订阅
2. 选择要取消订阅的通知。 在右上角单击 **Unsubscribe(取消订阅)**。 
-## 取消关注仓库
+## Unwatching repositories
当您取消关注某个仓库时,您将取消订阅该仓库的未来更新,除非您参与对话或被 @提及。
{% data reusables.notifications.access_notifications %}
-1. 在左侧边栏中的仓库列表下,使用“Manage notifications(管理通知)”下拉按钮单击 **Watched repositories(已关注的仓库)**。 
+1. 在左侧边栏中的仓库列表下,使用“Manage notifications(管理通知)”下拉按钮单击 **Watched repositories(已关注的仓库)**。
+
+ 
+
2. 在关注的仓库页面上,评估您关注的仓库后,选择是否:
- {% ifversion fpt or ghes > 3.0 or ghae or ghec %}
- - 取消关注仓库
- - 忽略某仓库的所有通知
- - 自定义接收通知的事件类型 ({% data reusables.notifications-v2.custom-notification-types %},如果启用)
- {% else %}
- - 取消关注仓库
- - 只关注某仓库的发行版
- - 忽略某仓库的所有通知
- {% endif %}
+ {%- ifversion fpt or ghes > 3.0 or ghae or ghec %}
+ - 取消关注仓库
+ - 忽略某仓库的所有通知
+ - If enabled, customize the types of event you receive notifications for ({% data reusables.notifications-v2.custom-notification-types %})
+ {%- else %}
+ - 取消关注仓库
+ - 只关注某仓库的发行版
+ - 忽略某仓库的所有通知
+ {%- endif %}
+{%- ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5819 %}
+1. Optionally, to unsubscribe from all repositories owned by a given user or organization, select the **Unwatch all** dropdown and click the organization whose repositories you'd like to unsubscribe from. The button to unwatch all repositories is only available if you are watching all activity or custom notifications on over 10 repositories.
+
+ 
+
+ - Click **Unwatch** to confirm that you want to unwatch the repositories owned by the selected user or organization, or click **Cancel** to cancel.
+
+ 
+
+{% endif %}
diff --git a/translations/zh-CN/content/actions/learn-github-actions/expressions.md b/translations/zh-CN/content/actions/learn-github-actions/expressions.md
index 80de5cb538a0..7db5f0304ad1 100644
--- a/translations/zh-CN/content/actions/learn-github-actions/expressions.md
+++ b/translations/zh-CN/content/actions/learn-github-actions/expressions.md
@@ -125,11 +125,11 @@ env:
#### 使用数组的示例
-`contains(github.event.issue.labels.*.name, 'bug')`
+`contains(github.event.issue.labels.*.name, 'bug')` returns whether the issue related to the event has a label "bug".
#### 使用字符串的示例
-`contains('Hello world', 'llo')` 返回 `true`
+`contains('Hello world', 'llo')` 返回 `true`.
### startsWith
@@ -139,7 +139,7 @@ env:
#### 示例
-`startsWith('Hello world', 'He')` 返回 `true`
+`startsWith('Hello world', 'He')` 返回 `true`.
### endsWith
@@ -149,7 +149,7 @@ env:
#### 示例
-`endsWith('Hello world', 'ld')` 返回 `true`
+`endsWith('Hello world', 'ld')` 返回 `true`.
### format
@@ -159,13 +159,11 @@ env:
#### 示例
-返回 'Hello Mona the Octocat'
-
`format('Hello {0} {1} {2}', 'Mona', 'the', 'Octocat')`
-#### 逸出括号示例
+返回 'Hello Mona the Octocat'.
-返回 '{Hello Mona the Octocat!}'
+#### 逸出括号示例
{% raw %}
```js
@@ -173,6 +171,8 @@ format('{{Hello {0} {1} {2}!}}', 'Mona', 'the', 'Octocat')
```
{% endraw %}
+返回 '{Hello Mona the Octocat!}'.
+
### join
`join( array, optionalSeparator )`
diff --git a/translations/zh-CN/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md b/translations/zh-CN/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md
index 02b16b159957..08232f6196f7 100644
--- a/translations/zh-CN/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md
+++ b/translations/zh-CN/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md
@@ -61,7 +61,7 @@ on:
on:
push:
# Sequence of patterns matched against refs/heads
- branches:
+ branches:
# Push events on main branch
- main
# Push events to branches matching refs/heads/mona/octocat
@@ -69,7 +69,7 @@ on:
# Push events to branches matching refs/heads/releases/10
- 'releases/**'
# Sequence of patterns matched against refs/tags
- tags:
+ tags:
- v1 # Push events to v1 tag
- v1.* # Push events to v1.0, v1.1, and v1.9 tags
```
@@ -109,7 +109,7 @@ on:
```yaml
on:
push:
- branches:
+ branches:
- 'releases/**'
- '!releases/**-alpha'
```
@@ -244,7 +244,7 @@ on:
value: ${{ jobs.my_job.outputs.job_output1 }}
workflow_output2:
description: "The second job output"
- value: ${{ jobs.my_job.outputs.job_output2 }}
+ value: ${{ jobs.my_job.outputs.job_output2 }}
```
{% endraw %}
@@ -273,7 +273,7 @@ jobs:
pass-secret-to-action:
runs-on: ubuntu-latest
- steps:
+ steps:
- name: Pass the received secret to an action
uses: ./.github/actions/my-action@v1
with:
@@ -297,13 +297,12 @@ When using the `workflow_dispatch` event, you can optionally specify inputs that
触发的工作流程接收 `github.event.input` 上下文中的输入。 更多信息请参阅“[上下文](/actions/learn-github-actions/contexts#github-context)”。
### 示例
-{% raw %}
```yaml
-on:
+on:
workflow_dispatch:
inputs:
logLevel:
- description: 'Log level'
+ description: 'Log level'
required: true
default: 'warning' {% ifversion ghec or ghes > 3.3 or ghae-issue-5511 %}
type: choice
@@ -326,9 +325,9 @@ jobs:
steps:
- name: Print the input tag to STDOUT
- run: echo The tag is ${{ github.event.inputs.tag }}
+ run: echo {% raw %} The tag is ${{ github.event.inputs.tag }} {% endraw %}
```
-{% endraw %}
+
## `on.schedule`
@@ -1029,7 +1028,7 @@ jobs:
with:
first_name: Mona
middle_name: The
- last_name: Octocat
+ last_name: Octocat
```
## `jobs..steps[*].with.args`
@@ -1257,7 +1256,7 @@ strategy:
### 示例:防止特定失败的矩阵作业无法运行工作流程
-您可以允许作业矩阵中的特定任务失败,但工作流程运行不失败。 例如, 只允许 `node` 设置为 `15` 的实验性作业失败,而不允许工作流程运行失败。
+您可以允许作业矩阵中的特定任务失败,但工作流程运行不失败。 For example, if you wanted to only allow an experimental job with `node` set to `15` to fail without failing the workflow run.
{% raw %}
```yaml
@@ -1509,7 +1508,7 @@ jobs:
call-workflow:
uses: octo-org/example-repo/.github/workflows/called-workflow.yml@main
secrets:
- access-token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
+ access-token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
```
{% endraw %}
diff --git a/translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md b/translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md
index 2a14ccaa3276..8a5b94c5b26a 100644
--- a/translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md
+++ b/translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md
@@ -67,73 +67,69 @@ shortTitle: 支持短信的国家/地区
冰岛
印度
印度尼西亚
-伊朗
-爱尔兰
-以色列
-意大利
-象牙海岸
-牙买加
-日本
-约旦
-哈萨克斯坦
-科威特
-拉脱维亚
-利比亚
-列支敦士登
-立陶宛
-卢森堡
-马达加斯加
-马拉维
-马来西亚
-马尔代夫
-马里
-马耳他
-毛里求斯
-墨西哥
-摩纳哥
-黑山
-蒙特塞拉特
-莫桑比克
-纳米比亚
-荷兰
-荷属安的列斯
-新西兰
-尼日利亚
-挪威
-菲律宾
-波兰
-葡萄牙
-卡塔尔
-罗马尼亚
-俄罗斯
-卢旺达
-塞内加尔
-塞尔维亚
-塞舌尔
-新加坡
-斯洛伐克
-斯洛文尼亚
-南非
-韩国
-西班牙
-斯里兰卡
-圣露西亚
-苏丹
-瑞典
-瑞士
-台湾
-坦桑尼亚
-多哥
-特立尼达和多巴哥
-土耳其
-特克斯和凯科斯群岛
-乌干达
-乌克兰
-阿拉伯联合酋长国
-英国
+Ireland
+Israel
+Italy
+Ivory Coast
+Jamaica
+Japan
+Jordan
+Kazakhstan
+Kuwait
+Latvia
+Libya
+Liechtenstein
+Lithuania
+Luxembourg
+Madagascar
+Malawi
+Malaysia
+Maldives
+Mali
+Malta
+Mauritius
+Mexico
+Monaco
+Montenegro
+Montserrat
+Mozambique
+Namibia
+Netherlands
+Netherlands Antilles
+New Zealand
+Nigeria
+Norway
+Philippines
+Poland
+Portugal
+Qatar
+Romania
+Rwanda
+Senegal
+Serbia
+Seychelles
+Singapore
+Slovakia
+Slovenia
+South Africa
+South Korea
+Spain
+Sri Lanka
+St Lucia
+Sudan
+Sweden
+Switzerland
+Taiwan
+Tanzania
+Togo
+Trinidad and Tobago
+Turks and Caicos Islands
+Uganda
+United Arab Emirates
+United Kingdom
美国
-乌兹别克斯坦
-委内瑞拉
+Uzbekistan
+Venezuela
## 延伸阅读
diff --git a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md
index 3d209f2f2455..bc0738697556 100644
--- a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md
+++ b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md
@@ -131,6 +131,12 @@ The benefit of using keyword filters is that only values with results are shown
If you enter multiple filters, the view will show alerts matching _all_ these filters. For example, `is:closed severity:high branch:main` will only display closed high-severity alerts that are present on the `main` branch. The exception is filters relating to refs (`ref`, `branch` and `pr`): `is:open branch:main branch:next` will show you open alerts from both the `main` branch and the `next` branch.
+{% ifversion fpt or ghes > 3.3 or ghec %}
+
+You can prefix the `tag` filter with `-` to exclude results with that tag. For example, `-tag:style` only shows alerts that do not have the `style` tag.
+
+{% endif %}
+
### Restricting results to application code only
You can use the "Only alerts in application code" filter or `autofilter:true` keyword and value to restrict results to alerts in application code. See "[About labels for alerts not in application code](#about-labels-for-alerts-that-are-not-found-in-application-code)" above for more information about the types of code that are not application code.
diff --git a/translations/zh-CN/content/desktop/installing-and-configuring-github-desktop/overview/keyboard-shortcuts.md b/translations/zh-CN/content/desktop/installing-and-configuring-github-desktop/overview/keyboard-shortcuts.md
index 7799989dd352..10e56fb85ed0 100644
--- a/translations/zh-CN/content/desktop/installing-and-configuring-github-desktop/overview/keyboard-shortcuts.md
+++ b/translations/zh-CN/content/desktop/installing-and-configuring-github-desktop/overview/keyboard-shortcuts.md
@@ -15,54 +15,54 @@ MacOS 上的 GitHub Desktop 快捷键
## 站点快捷键
-| 键盘快捷键 | 描述 |
-| ------------------------------------ | ----------------------------------------------------- |
-| ⌘, | 进入 Preferences(首选项) |
-| ⌘H | 隐藏 {% data variables.product.prodname_desktop %} 应用程序 |
-| ⌥⌘H | 隐藏所有其他应用程序 |
-| ⌘Q | 退出 {% data variables.product.prodname_desktop %}
-| ⌃⌘F | 切换全屏视图 |
-| ⌘0 | 将缩放比例重置为默认的文本大小 |
-| ⌘= | 放大文本和图形 |
-| ⌘- | 缩小文本和图形 |
-| ⌥⌘I | 切换开发者工具 |
+| 键盘快捷键 | 描述 |
+| -------------------------------------------------- | ----------------------------------------------------- |
+| Command+, | 进入 Preferences(首选项) |
+| Command+H | 隐藏 {% data variables.product.prodname_desktop %} 应用程序 |
+| Option+Command+H | 隐藏所有其他应用程序 |
+| Command+Q | 退出 {% data variables.product.prodname_desktop %}
+| Control+Command+F | 切换全屏视图 |
+| Command+0 | 将缩放比例重置为默认的文本大小 |
+| Command+= | 放大文本和图形 |
+| Command+- | 缩小文本和图形 |
+| Option+Command+I | 切换开发者工具 |
## 仓库
-| 键盘快捷键 | 描述 |
-| ------------------------------------ | ----------------------------------------------------- |
-| ⌘N | 新增仓库 |
-| ⌘O | 添加本地仓库 |
-| ⇧⌘O | 从 {% data variables.product.prodname_dotcom %} 克隆仓库 |
-| ⌘T | 显示仓库列表 |
-| ⌘P | 将最新提交推送到 {% data variables.product.prodname_dotcom %}
-| ⇧⌘P | 从 {% data variables.product.prodname_dotcom %} 拉取最新更改 |
-| ⌘⌫ | 删除现有仓库 |
-| ⇧⌘G | 在 {% data variables.product.prodname_dotcom %} 上查看仓库 |
-| ⌃` | 在首选的终端工具中打开仓库 |
-| ⇧⌘F | 在 Finder 中显示仓库 |
-| ⇧⌘A | 在首选的编辑器工具中打开仓库 |
-| ⌘I | 在 {% data variables.product.prodname_dotcom %} 上创建议题 |
+| 键盘快捷键 | 描述 |
+| ------------------------------------------------ | ----------------------------------------------------- |
+| Command+N | 新增仓库 |
+| Command+O | 添加本地仓库 |
+| Shift+Command+O | 从 {% data variables.product.prodname_dotcom %} 克隆仓库 |
+| Command+T | 显示仓库列表 |
+| Command+P | 将最新提交推送到 {% data variables.product.prodname_dotcom %}
+| Shift+Command+P | 从 {% data variables.product.prodname_dotcom %} 拉取最新更改 |
+| Command+Delete | 删除现有仓库 |
+| Shift+Command+G | 在 {% data variables.product.prodname_dotcom %} 上查看仓库 |
+| Control+` | 在首选的终端工具中打开仓库 |
+| Shift+Command+F | 在 Finder 中显示仓库 |
+| Shift+Command+A | 在首选的编辑器工具中打开仓库 |
+| Command+I | 在 {% data variables.product.prodname_dotcom %} 上创建议题 |
## 分支
-| 键盘快捷键 | 描述 |
-| ------------------------------------ | -------------------------------------------------------- |
-| ⌘1 | 在提交前显示所有更改 |
-| ⌘2 | 显示提交历史记录 |
-| ⌘B | 显示所有分支 |
-| ⌘G | 转到提交摘要字段 |
-| ⌘Enter | 当摘要或描述字段处于活动状态时提交更改 |
-| space | 选择或取消选择所有突出显示的文件 |
-| ⇧⌘N | 创建新分支 |
-| ⇧⌘R | 重命名当前分支 |
-| ⇧⌘D | 删除当前分支 |
-| ⇧⌘U | 从默认分支更新 |
-| ⇧⌘B | 与现有分支比较 |
-| ⇧⌘M | 合并到当前分支 |
-| ⌃H | 显示或隐藏储存的更改 |
-| ⇧⌘C | 比较 {% data variables.product.prodname_dotcom %} 上的分支 |
-| ⌘R | 在 {% data variables.product.prodname_dotcom %} 上显示当前拉取请求 |
+| 键盘快捷键 | 描述 |
+| ------------------------------------------------ | -------------------------------------------------------- |
+| Command+1 | 在提交前显示所有更改 |
+| Command+2 | 显示提交历史记录 |
+| Command+B | 显示所有分支 |
+| Command+G | 转到提交摘要字段 |
+| Command+Enter | 当摘要或描述字段处于活动状态时提交更改 |
+| Space | 选择或取消选择所有突出显示的文件 |
+| Shift+Command+N | 创建新分支 |
+| Shift+Command+R | 重命名当前分支 |
+| Shift+Command+D | 删除当前分支 |
+| Shift+Command+U | 从默认分支更新 |
+| Shift+Command+B | 与现有分支比较 |
+| Shift+Command+M | 合并到当前分支 |
+| Control+H | 显示或隐藏储存的更改 |
+| Shift+Command+C | 比较 {% data variables.product.prodname_dotcom %} 上的分支 |
+| Command+R | 在 {% data variables.product.prodname_dotcom %} 上显示当前拉取请求 |
{% endmac %}
@@ -72,50 +72,50 @@ Windows 上的 GitHub Desktop 键盘快捷键
## 站点快捷键
-| 键盘快捷键 | 描述 |
-| ------------------------------------------- | --------------- |
-| Ctrl, | 转到 Options(选项) |
-| F11 | 切换全屏视图 |
-| Ctrl0 | 将缩放比例重置为默认的文本大小 |
-| Ctrl= | 放大文本和图形 |
-| Ctrl- | 缩小文本和图形 |
-| CtrlShiftI | 切换开发者工具 |
+| 键盘快捷键 | 描述 |
+| --------------------------------------------- | --------------- |
+| Ctrl+, | 转到 Options(选项) |
+| F11 | 切换全屏视图 |
+| Ctrl+0 | 将缩放比例重置为默认的文本大小 |
+| Ctrl+= | 放大文本和图形 |
+| Ctrl+- | 缩小文本和图形 |
+| Ctrl+Shift+I | 切换开发者工具 |
## 仓库
-| 键盘快捷键 | 描述 |
-| ------------------------------------------- | ----------------------------------------------------- |
-| CtrlN | 新增仓库 |
-| CtrlO | 添加本地仓库 |
-| CtrlShiftO | 从 {% data variables.product.prodname_dotcom %} 克隆仓库 |
-| CtrlT | 显示仓库列表 |
-| CtrlP | 将最新提交推送到 {% data variables.product.prodname_dotcom %}
-| CtrlShiftP | 从 {% data variables.product.prodname_dotcom %} 拉取最新更改 |
-| CtrlDelete | 删除现有仓库 |
-| CtrlShiftG | 在 {% data variables.product.prodname_dotcom %} 上查看仓库 |
-| Ctrl` | 在首选的命令行工具中打开仓库 |
-| CtrlShiftF | 在 Explorer 中显示仓库 |
-| CtrlShiftA | 在首选的编辑器工具中打开仓库 |
-| CtrlI | 在 {% data variables.product.prodname_dotcom %} 上创建议题 |
+| 键盘快捷键 | 描述 |
+| --------------------------------------------- | ----------------------------------------------------- |
+| Ctrl+N | 新增仓库 |
+| Ctrl+O | 添加本地仓库 |
+| Ctrl+Shift+O | 从 {% data variables.product.prodname_dotcom %} 克隆仓库 |
+| Ctrl+T | 显示仓库列表 |
+| Ctrl+P | 将最新提交推送到 {% data variables.product.prodname_dotcom %}
+| Ctrl+Shift+P | 从 {% data variables.product.prodname_dotcom %} 拉取最新更改 |
+| Ctrl+Delete | 删除现有仓库 |
+| Ctrl+Shift+G | 在 {% data variables.product.prodname_dotcom %} 上查看仓库 |
+| Ctrl+` | 在首选的命令行工具中打开仓库 |
+| Ctrl+Shift+F | 在 Explorer 中显示仓库 |
+| Ctrl+Shift+A | 在首选的编辑器工具中打开仓库 |
+| Ctrl+I | 在 {% data variables.product.prodname_dotcom %} 上创建议题 |
## 分支
-| 键盘快捷键 | 描述 |
-| ------------------------------------------- | -------------------------------------------------------- |
-| Ctrl1 | 在提交前显示所有更改 |
-| Ctrl2 | 显示提交历史记录 |
-| CtrlB | 显示所有分支 |
-| CtrlG | 转到提交摘要字段 |
-| CtrlEnter | 当摘要或描述字段处于活动状态时提交更改 |
-| space | 选择或取消选择所有突出显示的文件 |
-| CtrlShiftN | 创建新分支 |
-| CtrlShiftR | 重命名当前分支 |
-| CtrlShiftD | 删除当前分支 |
-| CtrlShiftU | 从默认分支更新 |
-| CtrlShiftB | 与现有分支比较 |
-| CtrlShiftM | 合并到当前分支 |
-| CtrlH | 显示或隐藏储存的更改 |
-| CtrlShiftC | 比较 {% data variables.product.prodname_dotcom %} 上的分支 |
-| CtrlR | 在 {% data variables.product.prodname_dotcom %} 上显示当前拉取请求 |
+| 键盘快捷键 | 描述 |
+| --------------------------------------------- | -------------------------------------------------------- |
+| Ctrl+1 | 在提交前显示所有更改 |
+| Ctrl+2 | 显示提交历史记录 |
+| Ctrl+B | 显示所有分支 |
+| Ctrl+G | 转到提交摘要字段 |
+| Ctrl+Enter | 当摘要或描述字段处于活动状态时提交更改 |
+| Space | 选择或取消选择所有突出显示的文件 |
+| Ctrl+Shift+N | 创建新分支 |
+| Ctrl+Shift+R | 重命名当前分支 |
+| Ctrl+Shift+D | 删除当前分支 |
+| Ctrl+Shift+U | 从默认分支更新 |
+| Ctrl+Shift+B | 与现有分支比较 |
+| Ctrl+Shift+M | 合并到当前分支 |
+| Ctrl+H | 显示或隐藏储存的更改 |
+| Ctrl+Shift+C | 比较 {% data variables.product.prodname_dotcom %} 上的分支 |
+| Ctrl+R | 在 {% data variables.product.prodname_dotcom %} 上显示当前拉取请求 |
{% endwindows %}
diff --git a/translations/zh-CN/content/issues/trying-out-the-new-projects-experience/creating-a-project.md b/translations/zh-CN/content/issues/trying-out-the-new-projects-experience/creating-a-project.md
index 3cd4aa1f7734..4de8f5eebf5d 100644
--- a/translations/zh-CN/content/issues/trying-out-the-new-projects-experience/creating-a-project.md
+++ b/translations/zh-CN/content/issues/trying-out-the-new-projects-experience/creating-a-project.md
@@ -48,7 +48,7 @@ You can convert draft issues into issues. For more information, see [Converting
#### 搜索议题或拉取请求
1. 将光标放在项目底部一行,{% octicon "plus" aria-label="plus icon" %} 的旁边。
-2. 输入 `#`。
+2. Enter #.
3. 选择拉取请求或议题所在的仓库。 您可以输入仓库名称的一部分来缩小选项范围。
4. 选择议题或拉取请求。 您可以键入标题的一部分以缩小选项范围。
@@ -81,11 +81,11 @@ In board layout:
You can archive an item to keep the context about the item in the project but remove it from the project views. You can delete an item to remove it from the project entirely.
1. Select the item(s) to archive or delete. To select multiple items, do one of the following:
- - `cmd + click` (Mac) or `ctrl + click` (Windows/Linux) each item.
- - Select an item then `shift + arrow-up` or `shift + arrow-down` to select additional items above or below the initially selected item.
- - Select an item then `shift + click` another item to select all items between the two items.
- - Enter `cmd + a` (Mac) or `ctrl + a` (Windows/Linux) to select all items in a column in a board layout or all items in a table layout.
-2. To archive all selected items, enter `e`. To delete all selected items, enter `del`. Alternatively, select the {% octicon "triangle-down" aria-label="the item menu" %} (in table layout) or the {% octicon "kebab-horizontal" aria-label="the item menu" %} (in board layout), then select the desired action.
+ - Command+Click (Mac) or Ctrl+Click (Windows/Linux) each item.
+ - Select an item then Shift+↑ or Shift+↓ to select additional items above or below the initially selected item.
+ - Select an item then Shift+Click another item to select all items between the two items.
+ - Enter Command+A (Mac) or Ctrl+A (Windows/Linux) to select all items in a column in a board layout or all items in a table layout.
+2. To archive all selected items, enter E. To delete all selected items, enter Del. Alternatively, select the {% octicon "triangle-down" aria-label="the item menu" %} (in table layout) or the {% octicon "kebab-horizontal" aria-label="the item menu" %} (in board layout), then select the desired action.
You can restore archived items but not deleted items. For more information, see [Restoring archived items](#restoring-archived-items).
diff --git a/translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization.md b/translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization.md
index fd404968e535..3cc1ed037700 100644
--- a/translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization.md
+++ b/translations/zh-CN/content/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization.md
@@ -46,6 +46,12 @@ shortTitle: 管理团队同步
You must have a linked SAML identity. To create a linked identity, you must authenticate to your organization using SAML SSO and the supported IdP at least once. 更多信息请参阅“[使用 SAML 单点登录进行身份验证](/articles/authenticating-with-saml-single-sign-on)”。
+Your SAML settings **must** contain a valid IdP URL for the **Issuer** field.
+
+
+
+
+
### 为 Azure AD 启用团队同步
{% data reusables.identity-and-permissions.team-sync-azure-permissions %}
diff --git a/translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md b/translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md
index 557c870472d1..8f7765d94a72 100644
--- a/translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md
+++ b/translations/zh-CN/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md
@@ -112,7 +112,7 @@ kramdown:
为了使网站更容易读取,代码片段在 {% data variables.product.prodname_pages %} 上突显,就像在 {% data variables.product.product_name %} 上突显一样。 有关在 {% data variables.product.product_name %} 上突显语法的更多信息,请参阅“[创建和突显代码块](/articles/creating-and-highlighting-code-blocks)”。
-默认情况下,网站上的代码块将被 Jekyll 突出显示。 Jekyll 使用 [Rouge](https://github.com/jneen/rouge) 突显工具,它兼容于 [Pygments](http://pygments.org/)。 如果在 *_config.yml* 文件中指定 Pygments,将改用 Rouge。 Jekyll 不能使用任何其他语法突显工具,如果您在 *_config.yml* 文件中指定其他语法突显工具,将会收到页面构建警告。 更多信息请参阅“[关于 {% data variables.product.prodname_pages %} 站点的 Jekyll 构建错误](/articles/about-jekyll-build-errors-for-github-pages-sites)”。
+默认情况下,网站上的代码块将被 Jekyll 突出显示。 Jekyll 使用 [Rouge](https://github.com/jneen/rouge) 突显工具,它兼容于 [Pygments](http://pygments.org/)。 Pygments has been deprecated and not supported in Jekyll 4. If you specify Pygments in your *_config.yml* file, Rouge will be used as the fallback instead. Jekyll 不能使用任何其他语法突显工具,如果您在 *_config.yml* 文件中指定其他语法突显工具,将会收到页面构建警告。 更多信息请参阅“[关于 {% data variables.product.prodname_pages %} 站点的 Jekyll 构建错误](/articles/about-jekyll-build-errors-for-github-pages-sites)”。
如果想使用其他突显工具,如 `highlight.js`,则必须更新项目的 *_config.yml* 文件来禁用 Jekyll 的语法突显。
diff --git a/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch.md b/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch.md
index 5f7c6cbf5999..32a21f60e0c9 100644
--- a/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch.md
+++ b/translations/zh-CN/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch.md
@@ -1,7 +1,7 @@
---
title: 重命名分支
intro: 您可以更改仓库中分支的名称。
-permissions: 'People with write permissions to a repository can rename a branch in the repository unless it is the [default branch](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches#about-the-default-branch){% ifversion fpt or ghec %} or a [protected branch](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches){% endif %}. People with admin permissions can rename the default branch{% ifversion fpt or ghec %} and protected branches{% endif %}.'
+permissions: 'People with write permissions to a repository can rename a branch in the repository unless it is the [default branch](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches#about-the-default-branch){% ifversion fpt or ghec or ghes > 3.3 %} or a [protected branch](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches){% endif %}. People with admin permissions can rename the default branch{% ifversion fpt or ghec or ghes > 3.3 %} and protected branches{% endif %}.'
versions:
fpt: '*'
ghes: '>=3.1'
diff --git a/translations/zh-CN/data/reusables/command-palette/open-palette.md b/translations/zh-CN/data/reusables/command-palette/open-palette.md
index 67e09f841252..46636e2c2537 100644
--- a/translations/zh-CN/data/reusables/command-palette/open-palette.md
+++ b/translations/zh-CN/data/reusables/command-palette/open-palette.md
@@ -1 +1 @@
-1. Use Ctrlk (Windows and Linux) or ⌘k (Mac) to open the command palette with a scope determined by your current location in the UI.
+1. Use Ctrl+K (Windows/Linux) or Command+K (Mac) to open the command palette with a scope determined by your current location in the UI.
diff --git a/translations/zh-CN/data/reusables/desktop/delete-branch-mac.md b/translations/zh-CN/data/reusables/desktop/delete-branch-mac.md
index 1d86793a5fee..c0c408c68fe3 100644
--- a/translations/zh-CN/data/reusables/desktop/delete-branch-mac.md
+++ b/translations/zh-CN/data/reusables/desktop/delete-branch-mac.md
@@ -1 +1 @@
-1. 在菜单栏中,单击 **Branch(分支)**,然后单击 **Delete...(删除...)**。 您也可以按 shift⌘ commandD。
+1. 在菜单栏中,单击 **Branch(分支)**,然后单击 **Delete...(删除...)**。 You can also press Shift+Command+D.
diff --git a/translations/zh-CN/data/reusables/notifications-v2/custom-notification-types.md b/translations/zh-CN/data/reusables/notifications-v2/custom-notification-types.md
index af96a38c7e4d..02e9d2469742 100644
--- a/translations/zh-CN/data/reusables/notifications-v2/custom-notification-types.md
+++ b/translations/zh-CN/data/reusables/notifications-v2/custom-notification-types.md
@@ -1,5 +1,3 @@
-{%- ifversion fpt or ghes > 3.1 or ghae-issue-4910 %}
-issues, pulls requests, releases, security alerts, or discussions
-{%- else %}issues, pull requests, releases, or discussions
-{% endif %}
-
+{%- ifversion fpt or ghes > 3.1 or ghae-issue-4910 %}issues, pull requests, releases, security alerts, or discussions
+{%- else %}issues, pull requests, releases, or discussions
+{% endif %}
\ No newline at end of file
diff --git a/translations/zh-CN/data/reusables/projects/open-command-palette.md b/translations/zh-CN/data/reusables/projects/open-command-palette.md
index f05cf1551598..e1b495a0fdd9 100644
--- a/translations/zh-CN/data/reusables/projects/open-command-palette.md
+++ b/translations/zh-CN/data/reusables/projects/open-command-palette.md
@@ -1 +1 @@
-To open the project command palette, press `Ctrl+k` (Windows and Linux) or `Command+k` (Mac).
+To open the project command palette, press Command+K (Mac) or Ctrl+K (Windows/Linux).
diff --git a/translations/zh-CN/data/reusables/secret-scanning/partner-secret-list-private-repo.md b/translations/zh-CN/data/reusables/secret-scanning/partner-secret-list-private-repo.md
index f93c99aec8ac..2c9c1230b57b 100644
--- a/translations/zh-CN/data/reusables/secret-scanning/partner-secret-list-private-repo.md
+++ b/translations/zh-CN/data/reusables/secret-scanning/partner-secret-list-private-repo.md
@@ -8,7 +8,11 @@ Adobe | Adobe Service Token | adobe_service_token{% endif %}
{%- ifversion fpt or ghec or ghes > 3.1 or ghae %}
Adobe | Adobe Short-Lived Access Token | adobe_short_lived_access_token{% endif %}
{%- ifversion fpt or ghec or ghes > 3.1 or ghae %}
-Adobe | Adobe JSON Web Token | adobe_jwt{% endif %} Alibaba Cloud | Alibaba Cloud Access Key ID | alibaba_cloud_access_key_id Alibaba Cloud | Alibaba Cloud Access Key Secret | alibaba_cloud_access_key_secret Amazon Web Services (AWS) | Amazon AWS Access Key ID | aws_access_key_id Amazon Web Services (AWS) | Amazon AWS Secret Access Key | aws_secret_access_key
+Adobe | Adobe JSON Web Token | adobe_jwt{% endif %} Alibaba Cloud | Alibaba Cloud Access Key ID | alibaba_cloud_access_key_id Alibaba Cloud | Alibaba Cloud Access Key Secret | alibaba_cloud_access_key_secret
+{%- ifversion fpt or ghec or ghes > 3.3 %}
+Amazon | Amazon OAuth Client ID | amazon_oauth_client_id{% endif %}
+{%- ifversion fpt or ghec or ghes > 3.3 %}
+Amazon | Amazon OAuth Client Secret | amazon_oauth_client_secret{% endif %} Amazon Web Services (AWS) | Amazon AWS Access Key ID | aws_access_key_id Amazon Web Services (AWS) | Amazon AWS Secret Access Key | aws_secret_access_key
{%- ifversion fpt or ghec or ghes > 3.2 %}
Amazon Web Services (AWS) | Amazon AWS Session Token | aws_session_token{% endif %}
{%- ifversion fpt or ghec or ghes > 3.2 %}
@@ -129,6 +133,8 @@ New Relic | New Relic License Key | new_relic_license_key{% endif %}
Notion | Notion Integration Token | notion_integration_token{% endif %}
{%- ifversion fpt or ghec or ghes > 3.3 %}
Notion | Notion OAuth Client Secret | notion_oauth_client_secret{% endif %} npm | npm Access Token | npm_access_token NuGet | NuGet API Key | nuget_api_key
+{%- ifversion fpt or ghec or ghes > 3.3 %}
+Octopus Deploy | Octopus Deploy API Key | octopus_deploy_api_key{% endif %}
{%- ifversion fpt or ghec or ghes > 3.1 or ghae %}
Onfido | Onfido Live API Token | onfido_live_api_token{% endif %}
{%- ifversion fpt or ghec or ghes > 3.1 or ghae %}