Merge branch 'main' into dmca-forks

This commit is contained in:
Meg Bird 2021-02-24 16:07:47 -07:00 коммит произвёл GitHub
Родитель 4faf330568 63cf0c8b44
Коммит 66d62a530c
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
82 изменённых файлов: 22501 добавлений и 2778 удалений

26
.github/ISSUE_COMMENT_TEMPLATE/status.yml поставляемый Normal file
Просмотреть файл

@ -0,0 +1,26 @@
---
name: Status Update
about: A brief status update.
body:
- type: dropdown
attributes:
name: Status
options:
- name: "GREEN \U0001F34F (All good, smooth sailing)"
value: 'Status: GREEN'
- name: "YELLOW \U0001F7E1 (On track, with hurdles to work through)"
value: 'Status: YELLOW'
- name: "RED \U0001F534 (BLOCKED)"
value: 'Status: RED'
- type: input
attributes:
name: Update Summary
placeholder:
Brief summary of the status and next steps. Any blockers should be
called out specifically.
inputType: longText
- type: input
attributes:
name: 'Attribution'
value: '_created with :heart: by typing_ `/status`'
inputType: text

68
.github/allowed-actions.js поставляемый
Просмотреть файл

@ -4,36 +4,38 @@
// can be added it this list.
module.exports = [
'actions/cache@0781355a23dac32fd3bac414512f4b903437991a', //actions/cache@v2.1.3
'actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f', //actions/checkout@v2.3.4
'actions/github-script@626af12fe9a53dc2972b48385e7fe7dec79145c9', //actions/script@v3.0.0
'actions/labeler@5f867a63be70efff62b767459b009290364495eb', //actions/labeler@v2.2.0
'actions/setup-node@c46424eee26de4078d34105d3de3cc4992202b1e', //actions/setup-node@v2.1.4
'ruby/setup-ruby@fdcfbcf14ec9672f6f615cb9589a1bc5dd69d262', //ruby/setup-ruby@vv1.64.1
'actions/stale@9d6f46564a515a9ea11e7762ab3957ee58ca50da', //actions/stale@v3.0.16
'crowdin/github-action@fd9429dd63d6c0f8a8cb4b93ad8076990bd6e688',
'crykn/copy_folder_to_another_repo_action@0282e8b9fef06de92ddcae9fe6cb44df6226646c',
'cschleiden/actions-linter@0ff16d6ac5103cca6c92e6cbc922b646baaea5be',
'dawidd6/action-delete-branch@47743101a121ad657031e6704086271ca81b1911',
'docker://chinthakagodawita/autoupdate-action:v1',
'fkirc/skip-duplicate-actions@36feb0d8d062137530c2e00bd278d138fe191289',
'github/codeql-action/analyze@v1',
'github/codeql-action/init@v1',
'ianwalter/puppeteer-container@2466ba8ecf689ccf4e5dfadeff3ac2db227b2e17',
'juliangruber/approve-pull-request-action@c530832d4d346c597332e20e03605aa94fa150a8',
'juliangruber/find-pull-request-action@2fc55e82a6d5d36fe1e7f1848f7e64fd02d99de9',
'juliangruber/read-file-action@e0a316da496006ffd19142f0fd594a1783f3b512',
'lee-dohm/close-matching-issues@22002609b2555fe18f52b8e2e7c07cbf5529e8a8',
'pascalgn/automerge-action@c9bd1823770819dc8fb8a5db2d11a3a95fbe9b07', //pascalgn/automerge@0.12.0
'peter-evans/create-issue-from-file@a04ce672e3acedb1f8e416b46716ddfd09905326',
'peter-evans/create-or-update-comment@5221bf4aa615e5c6e95bb142f9673a9c791be2cd',
'peter-evans/create-pull-request@8c603dbb04b917a9fc2dd991dc54fef54b640b43',
'rachmari/actions-add-new-issue-to-column@1a459ef92308ba7c9c9dc2fcdd72f232495574a9',
'rachmari/labeler@832d42ec5523f3c6d46e8168de71cd54363e3e2e',
'repo-sync/github-sync@3832fe8e2be32372e1b3970bbae8e7079edeec88',
'repo-sync/pull-request@33777245b1aace1a58c87a29c90321aa7a74bd7d',
'someimportantcompany/github-actions-slack-message@0b470c14b39da4260ed9e3f9a4f1298a74ccdefd',
'tjenkinson/gh-action-auto-merge-dependency-updates@4d7756c04d9d999c5968697a621b81c47f533d61',
'EndBug/add-and-commit@9358097a71ad9fb9e2f9624c6098c89193d83575',
'dorny/paths-filter@eb75a1edc117d3756a18ef89958ee59f9500ba58'
]
"actions/cache@0781355a23dac32fd3bac414512f4b903437991a", //actions/cache@v2.1.3
"actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f", //actions/checkout@v2.3.4
"actions/github-script@626af12fe9a53dc2972b48385e7fe7dec79145c9", //actions/script@v3.0.0
"actions/labeler@5f867a63be70efff62b767459b009290364495eb", //actions/labeler@v2.2.0
"actions/setup-node@c46424eee26de4078d34105d3de3cc4992202b1e", //actions/setup-node@v2.1.4
"ruby/setup-ruby@fdcfbcf14ec9672f6f615cb9589a1bc5dd69d262", //ruby/setup-ruby@vv1.64.1
"actions/stale@9d6f46564a515a9ea11e7762ab3957ee58ca50da", //actions/stale@v3.0.16
"archive/github-actions-slack@d368c5a4ad757515a9344918f84c490b05777d94",
"ashley-taylor/regex-property-action@93a24f845cd20790924208225cc72da8b4c6d46d",
"crowdin/github-action@fd9429dd63d6c0f8a8cb4b93ad8076990bd6e688",
"crykn/copy_folder_to_another_repo_action@0282e8b9fef06de92ddcae9fe6cb44df6226646c",
"cschleiden/actions-linter@0ff16d6ac5103cca6c92e6cbc922b646baaea5be",
"dawidd6/action-delete-branch@47743101a121ad657031e6704086271ca81b1911",
"docker://chinthakagodawita/autoupdate-action:v1",
"fkirc/skip-duplicate-actions@36feb0d8d062137530c2e00bd278d138fe191289",
"github/codeql-action/analyze@v1",
"github/codeql-action/init@v1",
"ianwalter/puppeteer-container@2466ba8ecf689ccf4e5dfadeff3ac2db227b2e17",
"juliangruber/approve-pull-request-action@c530832d4d346c597332e20e03605aa94fa150a8",
"juliangruber/find-pull-request-action@2fc55e82a6d5d36fe1e7f1848f7e64fd02d99de9",
"juliangruber/read-file-action@e0a316da496006ffd19142f0fd594a1783f3b512",
"lee-dohm/close-matching-issues@22002609b2555fe18f52b8e2e7c07cbf5529e8a8",
"pascalgn/automerge-action@c9bd1823770819dc8fb8a5db2d11a3a95fbe9b07", //pascalgn/automerge@0.12.0
"peter-evans/create-issue-from-file@a04ce672e3acedb1f8e416b46716ddfd09905326",
"peter-evans/create-or-update-comment@5221bf4aa615e5c6e95bb142f9673a9c791be2cd",
"peter-evans/create-pull-request@8c603dbb04b917a9fc2dd991dc54fef54b640b43",
"rachmari/actions-add-new-issue-to-column@1a459ef92308ba7c9c9dc2fcdd72f232495574a9",
"rachmari/labeler@832d42ec5523f3c6d46e8168de71cd54363e3e2e",
"repo-sync/github-sync@3832fe8e2be32372e1b3970bbae8e7079edeec88",
"repo-sync/pull-request@33777245b1aace1a58c87a29c90321aa7a74bd7d",
"someimportantcompany/github-actions-slack-message@0b470c14b39da4260ed9e3f9a4f1298a74ccdefd",
"tjenkinson/gh-action-auto-merge-dependency-updates@4d7756c04d9d999c5968697a621b81c47f533d61",
"EndBug/add-and-commit@9358097a71ad9fb9e2f9624c6098c89193d83575",
"dorny/paths-filter@eb75a1edc117d3756a18ef89958ee59f9500ba58",
];

23
.github/workflows/post-status-updates-to-slack.yml поставляемый Normal file
Просмотреть файл

@ -0,0 +1,23 @@
name: Epic Status Update
on:
issue_comment:
types: [created]
jobs:
post-status-updates-to-slack:
runs-on: ubuntu-latest
if: contains(github.event.comment.body, '_created with') && contains(github.event.comment.body, 'typing_ `/status`')
steps:
- name: Trim HTML comments
id: trimmed
uses: ashley-taylor/regex-property-action@93a24f845cd20790924208225cc72da8b4c6d46d
with:
value: ${{github.event.comment.body}}
regex: '<!--(.*?)-->'
replacement: ''
- name: Send Slack notification
uses: archive/github-actions-slack@d368c5a4ad757515a9344918f84c490b05777d94
id: notify
with:
slack-channel: 'C01EEKVR0Q7'
slack-bot-user-oauth-access-token: ${{ secrets.SLACK_DOCS_BOT_TOKEN }}
slack-text: \n><${{ github.event.comment.html_url}}|*${{github.event.issue.title}}*>\nstatus update posted by ${{github.event.comment.user.login}}\n\n${{ steps.trimmed.outputs.value }}

5
.github/workflows/repo-freeze-check.yml поставляемый
Просмотреть файл

@ -1,7 +1,8 @@
name: Repo Freeze Check
on:
pull_request:
workflow_dispatch:
pull_request_target:
types:
- opened
- reopened
@ -21,7 +22,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Fail if repo merges are paused
if: ${{ env.FREEZE == 'true' }}
if: ${{ env.FREEZE == 'true' && github.ref != 'refs/heads/repo-sync' }}
run: |
echo 'Merges into the "main" branch on this repo are currently paused!'
exit 1

15
.github/workflows/repo-sync-stalls.yml поставляемый
Просмотреть файл

@ -5,20 +5,7 @@ on:
schedule:
- cron: '0 */2 * * *'
env:
FREEZE: ${{ secrets.FREEZE }}
jobs:
check-freezer:
name: Check for deployment freezes
runs-on: ubuntu-latest
steps:
- name: Exit if repo is frozen
if: ${{ env.FREEZE == 'true' }}
run: |
echo 'The repo is currently frozen! Exiting this workflow.'
exit 1 # prevents further steps from running
repo-sync-stalls:
runs-on: ubuntu-latest
steps:
@ -60,7 +47,7 @@ jobs:
})
- name: Send Slack notification if workflow fails
uses: someimportantcompany/github-actions-slack-message@0b470c14b39da4260ed9e3f9a4f1298a74ccdefd
if: failure()
if: ${{ failure() }}
with:
channel: ${{ secrets.DOCS_ALERTS_SLACK_CHANNEL_ID }}
bot-token: ${{ secrets.SLACK_DOCS_BOT_TOKEN }}

14
.github/workflows/repo-sync.yml поставляемый
Просмотреть файл

@ -11,24 +11,10 @@ on:
schedule:
- cron: '*/15 * * * *' # every 15 minutes
env:
FREEZE: ${{ secrets.FREEZE }}
jobs:
check-freezer:
name: Check for deployment freezes
runs-on: ubuntu-latest
steps:
- name: Exit if repo is frozen
if: ${{ env.FREEZE == 'true' }}
run: |
echo 'The repo is currently frozen! Exiting this workflow.'
exit 1 # prevents further steps from running
repo-sync:
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
name: Repo Sync
needs: check-freezer
runs-on: ubuntu-latest
steps:
- name: Check out repo

1
.github/workflows/triage-stale-check.yml поставляемый
Просмотреть файл

@ -28,6 +28,7 @@ jobs:
days-before-pr-stale: 14
days-before-pr-close: -1 # Never close
remove-stale-when-updated: false
operations-per-run: 100
only-labels: 'waiting for review'
# The hope is that by setting the stale-pr-label to the same label
# as the label that the stale check looks for, this will result in

Двоичные данные
assets/images/help/issues/assign_yourself.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 6.9 KiB

Двоичные данные
assets/images/help/issues/assignee_menu.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 16 KiB

Просмотреть файл

@ -49,7 +49,7 @@ For more information about installing and using self-hosted runners, see "[Addin
You can use any machine as a self-hosted runner as long at it meets these requirements:
* You can install and run the self-hosted runner application on the machine. For more information, see "[Supported operating systems for self-hosted runners](#supported-operating-systems-for-self-hosted-runners)."
* You can install and run the self-hosted runner application on the machine. For more information, see "[Supported architectures and operating systems for self-hosted runners](#supported-architectures-and-operating-systems-for-self-hosted-runners)."
* The machine can communicate with {% data variables.product.prodname_actions %}. For more information, see "[Communication between self-hosted runners and {% data variables.product.prodname_dotcom %}](#communication-between-self-hosted-runners-and-github)."
* The machine has enough hardware resources for the type of workflows you plan to run. The self-hosted runner application itself only requires minimal resources.
* If you want to run workflows that use Docker container actions or service containers, you must use a Linux machine and Docker must be installed.
@ -120,6 +120,7 @@ You must ensure that the machine has the appropriate network access to communica
github.com
api.github.com
*.actions.githubusercontent.com
github-releases.githubusercontent.com
codeload.github.com
```

Просмотреть файл

@ -115,7 +115,7 @@ Some customers might attempt to partially mitigate these risks by implementing s
You can use the audit log to monitor administrative tasks in an organization. The audit log records the type of action, when it was run, and which user account performed the action.
For example, you can use the audit log to track the `action:org.update_actions_secret` event, which tracks changes to organization secrets:
For example, you can use the audit log to track the `org.update_actions_secret` event, which tracks changes to organization secrets:
![Audit log entries](/assets/images/help/repository/audit-log-entries.png)
The following tables describe the {% data variables.product.prodname_actions %} events that you can find in the audit log. For more information on using the audit log, see
@ -124,26 +124,45 @@ The following tables describe the {% data variables.product.prodname_actions %}
#### Events for secret management
| Action | Description
|------------------|-------------------
| `action:org.create_actions_secret` | Triggered when a organization admin [creates a {% data variables.product.prodname_actions %} secret](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-an-organization).
| `action:org.remove_actions_secret` | Triggered when a organization admin removes a {% data variables.product.prodname_actions %} secret.
| `action:org.update_actions_secret` | Triggered when a organization admin updates a {% data variables.product.prodname_actions %} secret.
| `action:repo.create_actions_secret ` | Triggered when a repository admin [creates a {% data variables.product.prodname_actions %} secret](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-a-repository).
| `action:repo.remove_actions_secret` | Triggered when a repository admin removes a {% data variables.product.prodname_actions %} secret.
| `action:repo.update_actions_secret` | Triggered when a repository admin updates a {% data variables.product.prodname_actions %} secret.
| `org.create_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is created for an organization. For more information, see "[Creating encrypted secrets for an organization](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-an-organization)."
| `org.remove_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is removed.
| `org.update_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is updated.
| `repo.create_actions_secret ` | Triggered when a {% data variables.product.prodname_actions %} secret is created for a repository. For more information, see "[Creating encrypted secrets for a repository](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-a-repository)."
| `repo.remove_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is removed.
| `repo.update_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is updated.
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
#### Events for self-hosted runners
| Action | Description
|------------------|-------------------
| `action:org.register_self_hosted_runner` | Triggered when an organization owner [registers a new self-hosted runner](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-organization).
| `action:org.remove_self_hosted_runner` | Triggered when an organization owner [removes a self-hosted runner](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-an-organization).
| `action:repo.register_self_hosted_runner` | Triggered when a repository admin [registers a new self-hosted runner](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository).
| `action:repo.remove_self_hosted_runner` | Triggered when a repository admin [removes a self-hosted runner](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository).
| `enterprise.register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to an enterprise](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-enterprise)."
| `enterprise.self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."
| `org.register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to an organization](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-organization)."
| `org.remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see [Removing a runner from an organization](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-an-organization).
| `org.self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."
| `repo.register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to a repository](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository)."
| `repo.remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see "[Removing a runner from a repository](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository)."
| `repo.self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."
{% endif %}
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
#### Events for self-hosted runner groups
| Action | Description
|------------------|-------------------
| `action:org.runner_group_created` | Triggered when an organization admin [creates a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-organization).
| `action:org.runner_group_removed` | Triggered when an organization admin removes a self-hosted runner group.
| `action:org.runner_group_renamed` | Triggered when an organization admin renames a self-hosted runner group.
| `action:org.runner_group_runners_added` | Triggered when an organization admin [adds a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group).
| `action:org.runner_group_runners_removed` | Triggered when an organization admin removes a self-hosted runner from a group.
| `enterprise.runner_group_created` | Triggered when a self-hosted runner group is created. For more information, see "[Creating a self-hosted runner group for an enterprise](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-enterprise)."
| `enterprise.runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)."
| `enterprise.runner_group_runner_removed` | Triggered when a self-hosted runner is removed from a group.
| `enterprise.runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see "[Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)."
| `enterprise.runner_group_updated` |Triggered when the configuration of a self-hosted runner group is changed. For more information, see "[Changing the access policy of a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."
| `org.runner_group_created` | Triggered when a self-hosted runner group is created. For more information, see "[Creating a self-hosted runner group for an organization](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-organization)."
| `org.runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)."
| `org.runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see "[Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)."
| `org.runner_group_runner_removed` | Triggered when a self-hosted runner is removed from a group.
{% endif %}
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
#### Events for workflow activities
{% data reusables.actions.actions-audit-events-workflow %}
{% endif %}

Просмотреть файл

@ -12,38 +12,17 @@ versions:
{% data reusables.repositories.actions-workflow-status-badge-into %}
If your workflow uses the `name` keyword, you must reference the workflow by name. If the name of your workflow contains white space, you'll need to replace the space with the URL encoded string `%20`. For more information about the `name` keyword, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/articles/workflow-syntax-for-github-actions#name)."
You reference the workflow by the name of your workflow file.
```
https://github.com/<OWNER>/<REPOSITORY>/workflows/<WORKFLOW_NAME>/badge.svg
https://github.com/<OWNER>/<REPOSITORY>/actions/workflows/<WORKFLOW_FILE>/badge.svg
```
### Using the workflow file name
Alternatively, if your workflow doesn't have a `name`, you must reference the workflow file using the file path relative to the repository's root directory.
{% note %}
**Note:** Referencing the workflow file using the file path does not work if the workflow has a `name`.
{% endnote %}
```
https://github.com/<OWNER>/<REPOSITORY>/workflows/<WORKFLOW_FILE_PATH>/badge.svg
```
### Using a workflow name
This Markdown example adds a status badge for a workflow with the name "Greet Everyone." The `OWNER` of the repository is the `actions` organization and the `REPOSITORY` name is `hello-world`.
This Markdown example adds a status badge for a workflow with the file path `.github/workflows/main.yml`. The `OWNER` of the repository is the `github` organization and the `REPOSITORY` name is `docs`.
```markdown
![example workflow name](https://github.com/actions/hello-world/workflows/Greet%20Everyone/badge.svg)
```
### Using a workflow file path
This Markdown example adds a status badge for a workflow with the file path `.github/workflows/main.yml`. The `OWNER` of the repository is the `actions` organization and the `REPOSITORY` name is `hello-world`.
```markdown
![example workflow file path](https://github.com/actions/hello-world/workflows/.github/workflows/main.yml/badge.svg)
![example workflow](https://github.com/github/docs/actions/workflows/main.yml/badge.svg)
```
### Using the `branch` parameter
@ -51,7 +30,7 @@ This Markdown example adds a status badge for a workflow with the file path `.gi
This Markdown example adds a status badge for a branch with the name `feature-1`.
```markdown
![example branch parameter](https://github.com/actions/hello-world/workflows/Greet%20Everyone/badge.svg?branch=feature-1)
![example branch parameter](https://github.com/github/docs/actions/workflows/main.yml/badge.svg?branch=feature-1)
```
### Using the `event` parameter
@ -59,5 +38,5 @@ This Markdown example adds a status badge for a branch with the name `feature-1`
This Markdown example adds a badge that displays the status of workflow runs triggered by the `pull_request` event.
```markdown
![example event parameter](https://github.com/actions/hello-world/workflows/Greet%20Everyone/badge.svg?event=pull_request)
![example event parameter](https://github.com/github/docs/actions/workflows/main.yml/badge.svg?event=pull_request)
```

Просмотреть файл

@ -13,7 +13,7 @@ versions:
Jobs that reference an environment configured with required reviewers will wait for an approval before starting. While a job is awaiting approval, it has a status of "Waiting". If a job is not approved within 30 days, the workflow run will be automatically canceled.
For more information about environments and required approvals, see "[Environments](/actions/reference/environments)."
For more information about environments and required approvals, see "[Environments](/actions/reference/environments)." For information about how to review deployments with the REST API, see "[Workflow Runs](/rest/reference/actions#workflow-runs)."
### Approving or rejecting a job

Просмотреть файл

@ -78,7 +78,7 @@ Committing the workflow file in your repository triggers the `push` event and ru
### Next steps
The super-linter workflow you just added runs any time code is pushed to your repository to help you spot errors and inconsistencies in your code. But, this is only the beginning of what you can do with {% data variables.product.prodname_actions %}. Your repository can contain multiple workflows that trigger different jobs based on different events. {% data variables.product.prodname_actions %} can help you automate nearly every aspect of your application development processes. Ready to get started? Here are some helpful resources for taking your next steps with {% data variables.product.prodname_actions %}:
The super-linter workflow you just added runs each time code is pushed to your repository to help you spot errors and inconsistencies in your code. But this is only the beginning of what you can do with {% data variables.product.prodname_actions %}. Your repository can contain multiple workflows that trigger different jobs based on different events. {% data variables.product.prodname_actions %} can help you automate nearly every aspect of your application development processes. Ready to get started? Here are some helpful resources for taking your next steps with {% data variables.product.prodname_actions %}:
- "[Learn {% data variables.product.prodname_actions %}](/actions/learn-github-actions)" for an in-depth tutorial
- "[Guides](/actions/guides)" for specific uses cases and examples
@ -88,7 +88,7 @@ The super-linter workflow you just added runs any time code is pushed to your re
### Introduction
Printing "Hello, World!" is a great way to explore the basic set up and syntax of a new programming language. In this guide, you'll use GitHub Actions to print "Hello, World!" within your {% data variables.product.prodname_dotcom %} repository's workflow logs. All you need to get started is a {% data variables.product.prodname_dotcom %} repository where you feel comfortable creating and running a sample {% data variables.product.prodname_actions %} workflow. Feel free to create a new repository for this Quickstart, you can use it to test this and future {% data variables.product.prodname_actions %} workflows.
Printing "Hello, World!" is a great way to explore the basic set up and syntax of a new programming language. In this guide, you'll use GitHub Actions to print "Hello, World!" within your {% data variables.product.prodname_dotcom %} repository's workflow logs. All you need to get started is a {% data variables.product.prodname_dotcom %} repository where you feel comfortable creating and running a sample {% data variables.product.prodname_actions %} workflow. Feel free to create a new repository for this Quickstart to test this and future {% data variables.product.prodname_actions %} workflows.
### Creating your first workflow
@ -143,7 +143,7 @@ Printing "Hello, World!" is a great way to explore the basic set up and syntax o
### Next steps
The hello-world workflow you just added is a simple example of a manually triggered workflow. This is only the beginning of what you can do with {% data variables.product.prodname_actions %}. Your repository can contain multiple workflows that trigger different jobs based on different events. {% data variables.product.prodname_actions %} can help you automate nearly every aspect of your application development processes. Ready to get started? Here are some helpful resources for taking your next steps with {% data variables.product.prodname_actions %}:
The hello-world workflow you just added is a minimal example of a manually triggered workflow. This is only the beginning of what you can do with {% data variables.product.prodname_actions %}. Your repository can contain multiple workflows that trigger different jobs based on different events. {% data variables.product.prodname_actions %} can help you automate nearly every aspect of your application development processes. Ready to get started? Here are some helpful resources for taking your next steps with {% data variables.product.prodname_actions %}:
- "[Learn {% data variables.product.prodname_actions %}](/actions/learn-github-actions)" for an in-depth tutorial
- "[Guides](/actions/guides)" for specific uses cases and examples

Просмотреть файл

@ -56,6 +56,8 @@ Secrets stored in an environment are only available to workflow jobs that refere
1. Enter a name for the environment, then click **Configure environment**. Environment names are not case sensitive. An environment name may not exceed 255 characters and must be unique within the repository.
1. Configure any environment protection rules or environment secrets.
You can also create and configure environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)" and "[Secrets](/rest/reference/actions#secrets)."
Running a workflow that references an environment that does not exist will create an environment with the referenced name. The newly created environment will not have any protection rules or secrets configured. Anyone that can edit workflows in the repository can create environments via a workflow file, but only repository admins can configure the environment.
### Referencing an environment
@ -77,3 +79,5 @@ Deleting an environment will delete all secrets and protection rules associated
{% data reusables.github-actions.sidebar-environment %}
1. Next the the environment that you want to delete, click {% octicon "trashcan" aria-label="The trashcan icon" %}.
2. Click **I understand, delete this environment**.
You can also delete environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)."

Просмотреть файл

@ -41,6 +41,12 @@ The following steps occur to trigger a workflow run:
The `schedule` event allows you to trigger a workflow at a scheduled time.
{% note %}
Note: Due to load, the `schedule` event may be delayed
{% endnote %}
#### `schedule`
| Webhook event payload | Activity types | `GITHUB_SHA` | `GITHUB_REF` |
@ -271,6 +277,12 @@ on:
deployment_status
```
{% note %}
**Note:** When a deployment status's state is set to `inactive`, a webhook event will not be created.
{% endnote %}
#### `fork`
Runs your workflow anytime when someone forks a repository, which triggers the `fork` event. For information about the REST API, see "[Create a fork](/rest/reference/repos#create-a-fork)."

Просмотреть файл

@ -42,7 +42,6 @@ For the users of {% data variables.product.product_location %} to be able to ena
![Checkbox to enable or disable {% data variables.product.prodname_code_scanning %}](/assets/images/enterprise/management-console/enable-code-scanning-checkbox.png)
{% data reusables.enterprise_management_console.save-settings %}
### Running {% data variables.product.prodname_code_scanning %} using {% data variables.product.prodname_actions %}
#### Setting up a self-hosted runner
@ -89,3 +88,25 @@ The {% data variables.product.prodname_codeql_runner %} is a command-line tool t
1. Under "{% data variables.product.prodname_advanced_security %}", unselect **{% data variables.product.prodname_code_scanning_capc %}**.
![Checkbox to enable or disable {% data variables.product.prodname_code_scanning %}](/assets/images/enterprise/management-console/code-scanning-disable.png)
{% data reusables.enterprise_management_console.save-settings %}
### Enabling or disabling {% data variables.product.prodname_code_scanning %} via the administrative shell (SSH)
You can enable or disable {% data variables.product.prodname_code_scanning %} programmatically on {% data variables.product.product_location %}. For example, you can enable {% data variables.product.prodname_code_scanning %} with your infrastructure-as-code tooling when you deploy an instance for staging or disaster recovery.
For more information about the administrative shell and command-line utilities for {% data variables.product.prodname_ghe_server %}, see "[Accessing the administrative shell (SSH)](/admin/configuration/accessing-the-administrative-shell-ssh)" and "[Command-line utilities](/admin/configuration/command-line-utilities#ghe-config)."
1. SSH into {% data variables.product.product_location %}.
1. Enable {% data variables.product.prodname_code_scanning %}.
```shell
ghe-config app.minio.enabled true
ghe-config app.code-scanning.enabled true
```
2. Optionally, disable {% data variables.product.prodname_code_scanning %}.
```shell
ghe-config app.minio.enabled false
ghe-config app.code-scanning.enabled false
```
3. Apply the configuration.
```shell
ghe-config-apply
```

Просмотреть файл

@ -11,8 +11,8 @@ versions:
---
#### Authentication
Name | Description
------------------------------------:| ----------------------------------------
Action | Description
------------------------------------ | ----------------------------------------
`oauth_access.create` | An [OAuth access token][] was [generated][generate token] for a user account.
`oauth_access.destroy` | An [OAuth access token][] was deleted from a user account.
`oauth_application.destroy` | An [OAuth application][] was deleted from a user or organization account.
@ -31,10 +31,17 @@ Name | Description
[OAuth application]: /guides/basics-of-authentication/#registering-your-app
[2fa]: /articles/about-two-factor-authentication
{% if currentVersion ver_gt "enterprise-server@2.21" %}
#### {% data variables.product.prodname_actions %}
{% data reusables.actions.actions-audit-events-for-enterprise %}
{% endif %}
#### Hooks
Name | Description
---------------------------------:| -------------------------------------------
Action | Description
--------------------------------- | -------------------------------------------
`hook.create` | A new hook was added to a repository.
`hook.config_changed` | A hook's configuration was changed.
`hook.destroy` | A hook was deleted.
@ -42,8 +49,8 @@ Name | Description
#### Enterprise configuration settings
Name | Description
-----------------------------------------------:| -------------------------------------------
Action | Description
----------------------------------------------- | -------------------------------------------
`business.update_member_repository_creation_permission` | A site admin restricts repository creation in organizations in the enterprise. For more information, see "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#setting-a-policy-for-repository-creation)."
`business.clear_members_can_create_repos` | A site admin clears a restriction on repository creation in organizations in the enterprise. For more information, see "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#setting-a-policy-for-repository-creation)."{% if enterpriseServerVersions contains currentVersion %}
`enterprise.config.lock_anonymous_git_access` | A site admin locks anonymous Git read access to prevent repository admins from changing existing anonymous Git read access settings for repositories in the enterprise. For more information, see "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)."
@ -51,8 +58,8 @@ Name | Description
#### Issues and pull requests
Name | Description
------------------------------------:| -----------------------------------------------------------
Action | Description
------------------------------------ | -----------------------------------------------------------
`issue.update` | An issue's body text (initial comment) changed.
`issue_comment.update` | A comment on an issue (other than the initial one) changed.
`pull_request_review_comment.delete` | A comment on a pull request was deleted.
@ -60,16 +67,16 @@ Name | Description
#### Organizations
Name | Description
------------------:| ----------------------------------------------------------
Action | Description
------------------ | ----------------------------------------------------------
`org.async_delete` | A user initiated a background job to delete an organization.
`org.delete` | An organization was deleted by a user-initiated background job.{% if currentVersion != "github-ae@latest" %}
`org.transform` | A user account was converted into an organization. For more information, see "[Converting a user into an organization](/github/setting-up-and-managing-your-github-user-account/converting-a-user-into-an-organization)."{% endif %}
#### Protected branches
Name | Description
--------------------------:| ----------------------------------------------------------
Action | Description
-------------------------- | ----------------------------------------------------------
`protected_branch.create ` | Branch protection is enabled on a branch.
`protected_branch.destroy` | Branch protection is disabled on a branch.
`protected_branch.update_admin_enforced ` | Branch protection is enforced for repository administrators.
@ -83,8 +90,8 @@ Name | Description
#### Repositories
Name | Description
---------------------:| -------------------------------------------------------
Action | Description
--------------------- | -------------------------------------------------------
`repo.access` | The visibility of a repository changed to private{% if enterpriseServerVersions contains currentVersion %}, public,{% endif %} or internal.
`repo.archived` | A repository was archived. For more information, see "[Archiving a {% data variables.product.prodname_dotcom %} repository](/github/creating-cloning-and-archiving-repositories/archiving-a-github-repository)."
`repo.add_member` | A collaborator was added to a repository.
@ -103,8 +110,8 @@ Name | Description
#### Site admin tools
Name | Description
-----------------------------:| -----------------------------------------------
Action | Description
----------------------------- | -----------------------------------------------
`staff.disable_repo` | A site admin disabled access to a repository and all of its forks.
`staff.enable_repo` | A site admin re-enabled access to a repository and all of its forks.
`staff.fake_login` | A site admin signed into {% data variables.product.product_name %} as another user.
@ -113,8 +120,8 @@ Name | Description
#### Teams
Name | Description
---------------------------------:| -------------------------------------------
Action | Description
--------------------------------- | -------------------------------------------
`team.create` | A user account or repository was added to a team.
`team.delete` | A user account or repository was removed from a team.{% if currentVersion ver_gt "enterprise-server@2.22" or currentVersion == "github-ae@latest" %}
`team.demote_maintainer` | A user was demoted from a team maintainer to a team member.{% endif %}
@ -124,8 +131,8 @@ Name | Description
#### Users
Name | Description
---------------------------------:| -------------------------------------------
Action | Description
--------------------------------- | -------------------------------------------
`user.add_email` | An email address was added to a user account.
`user.async_delete` | An asynchronous job was started to destroy a user account, eventually triggering `user.delete`.{% if enterpriseServerVersions contains currentVersion %}
`user.change_password` | A user changed his or her password.{% endif %}

Просмотреть файл

@ -27,7 +27,7 @@ You enable {% data variables.product.prodname_dependabot_version_updates %} by c
#### Example *dependabot.yml* file
The example *dependabot.yml* file below configures version updates for two package mangers: npm and Docker. When this file is checked in, {% data variables.product.prodname_dependabot %} checks the manifest files on the default branch for outdated dependencies. If it finds outdated dependencies, it will raise pull requests against the default branch to update the dependencies.
The example *dependabot.yml* file below configures version updates for two package managers: npm and Docker. When this file is checked in, {% data variables.product.prodname_dependabot %} checks the manifest files on the default branch for outdated dependencies. If it finds outdated dependencies, it will raise pull requests against the default branch to update the dependencies.
```yaml
# Basic dependabot.yml file with

Просмотреть файл

@ -56,4 +56,4 @@ A limited number of people will be invited to join the beta. To join the waitlis
If you encounter problems using {% data variables.product.prodname_codespaces %}, see "[Troubleshooting your codespace](/github/developing-online-with-codespaces/troubleshooting-your-codespace)."
If you still need help or have feedback about {% data variables.product.prodname_codespaces %}, use the [Community Forum](https://github.community/c/codespaces-beta/45).
If you still need help or have feedback about {% data variables.product.prodname_codespaces %}, use the [Codespaces Feedback](https://github.com/github/feedback/discussions/categories/codespaces-feedback) discussion.

Просмотреть файл

@ -11,13 +11,29 @@ versions:
Anyone with write permissions to a repository can assign issues and pull requests.
### About issue and pull request assignees
You can assign up to 10 people to each issue or pull request, including yourself, anyone who has commented on the issue or pull request, anyone with write permissions to the repository, and organization members with read permissions to the repository. For more information, see "[Access permissions on {% data variables.product.prodname_dotcom %}](/articles/access-permissions-on-github)."
### Assigning an individual issue or pull request
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.sidebar-issue-pr %}
3. Open the issue or pull request that you want to assign to someone.
4. If no one is assigned to an issue or pull request, click **assign yourself** to assign yourself.
![The assign yourself item](/assets/images/help/issues/assign_yourself.png)
5. In the right side menu, click **Assignees**.
![The Assignees menu item](/assets/images/help/issues/assignee_menu.png)
6. To assign the issue or pull request to a user, start typing their username, then click their name when it appears. You can select and add up to ten assignees to an issue or pull request.
![Issues assignment drop-down](/assets/images/help/issues/issues_assigning_dropdown.png)
### Assigning multiple issues or pull requests
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.sidebar-issue-pr %}
3. Select the checkbox next to the items you want to assign to someone.
![Issues metadata checkbox](/assets/images/help/issues/issues_assign_checkbox.png)
4. In the upper-right corner, click **Assignee**.
4. In the upper-right corner, click **Assign**.
5. To assign the items to a user, start typing their username, then click their name when it appears. You can select and add up to ten assignees to an issue or pull request.
![Issues assignment drop-down](/assets/images/help/issues/issues_assigning_dropdown.png)

Просмотреть файл

@ -26,6 +26,16 @@ To attach a file to an issue or pull request conversation, drag and drop it into
{% endtip %}
The maximum size for files is 25MB and the maximum size for images is 10MB.
{% if currentVersion == "free-pro-team@latest" %}
Videos can be up to 100 MB in size if the repository is owned by a user or organization on a paid GitHub plan.
{% note %}
**Note:** Support for video attachments is currently in beta and subject to change.
{% endnote %}
{% endif %}
We support these files:
@ -36,6 +46,7 @@ We support these files:
* Microsoft Word (*.docx*), Powerpoint (*.pptx*), and Excel (*.xlsx*) documents
* Text files (*.txt*)
* PDFs (*.pdf*)
* ZIP (*.zip*, *.gz*)
* ZIP (*.zip*, *.gz*){% if currentVersion == "free-pro-team@latest" %}
* Video (*.mp4*, *.mov*){% endif %}
![Attachments animated GIF](/assets/images/help/pull_requests/dragging_images.gif)

Просмотреть файл

@ -8,11 +8,7 @@ versions:
enterprise-server: '*'
github-ae: '*'
---
{% note %}
**Note:** In order to link a repository to your organization or user owned project board the repository needs to have issues enabled. For information on how to see if issues are disabled for a repository, see "[Disabling issues](/github/managing-your-work-on-github/disabling-issues) ."
{% endnote %}
Anyone with write permissions to a project board can link repositories owned by that organization or user account to the project board. For more information, see "[Project board permissions for an organization](/articles/project-board-permissions-for-an-organization/)" or "[Permission levels for user-owned project boards](/articles/permission-levels-for-user-owned-project-boards/)."
@ -30,6 +26,12 @@ Anyone with write permissions to a project board can link repositories owned by
7. Click **Link**. To unlink, click **Unlink**.
![Link button](/assets/images/help/projects/link-button.png)
{% note %}
**Note:** In order to link a repository to your organization or user owned project board the repository needs to have issues enabled. That is, the repository has an "Issues" tab (in forked repositories issues are disabled by default). For information on how to enable or disable issues for a repository, see "[Disabling issues for a repository](/github/managing-your-work-on-github/disabling-issues)."
{% endnote %}
### Further reading
- "[About projects boards](/articles/about-project-boards)"

Просмотреть файл

@ -244,6 +244,13 @@ An overview of some of the most common actions that are recorded as events in th
| `update` | Triggered when [a reply to a team discussion post is edited](/articles/managing-disruptive-comments/#editing-a-comment).
| `destroy` | Triggered when [a reply to a team discussion post is deleted](/articles/managing-disruptive-comments/#deleting-a-comment).
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
#### `enterprise` category actions
{% data reusables.actions.actions-audit-events-for-enterprise %}
{% endif %}
{% if currentVersion == "free-pro-team@latest" %}
#### `git` category actions
@ -330,7 +337,7 @@ For more information, see "[Managing the publication of {% data variables.produc
| `audit_log_export` | Triggered when an organization admin [creates an export of the organization audit log](#exporting-the-audit-log). If the export included a query, the log will list the query used and the number of audit log entries matching that query.
| `block_user` | Triggered when an organization owner [blocks a user from accessing the organization's repositories](/articles/blocking-a-user-from-your-organization).
| `cancel_invitation` | Triggered when an organization invitation has been revoked. {% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `create_actions_secret` | Triggered when a organization admin [creates a {% data variables.product.prodname_actions %} secret](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-an-organization).{% endif %} {% if currentVersion == "free-pro-team@latest"%}
| `create_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is created for an organization. For more information, see "[Creating encrypted secrets for an organization](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-an-organization)."{% endif %} {% if currentVersion == "free-pro-team@latest"%}
| `disable_oauth_app_restrictions` | Triggered when an owner [disables {% data variables.product.prodname_oauth_app %} access restrictions](/articles/disabling-oauth-app-access-restrictions-for-your-organization) for your organization.
| `disable_saml` | Triggered when an organization admin disables SAML single sign-on for an organization.{% endif %}
| `disable_member_team_creation_permission` | Triggered when an organization owner limits team creation to owners. For more information, see "[Setting team creation permissions in your organization](/articles/setting-team-creation-permissions-in-your-organization)." |{% if currentVersion != "github-ae@latest" %}
@ -343,21 +350,21 @@ For more information, see "[Managing the publication of {% data variables.produc
| `oauth_app_access_approved` | Triggered when an owner [grants organization access to an {% data variables.product.prodname_oauth_app %}](/articles/approving-oauth-apps-for-your-organization/).
| `oauth_app_access_denied` | Triggered when an owner [disables a previously approved {% data variables.product.prodname_oauth_app %}'s access](/articles/denying-access-to-a-previously-approved-oauth-app-for-your-organization) to your organization.
| `oauth_app_access_requested` | Triggered when an organization member requests that an owner grant an {% data variables.product.prodname_oauth_app %} access to your organization.{% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `register_self_hosted_runner` | Triggered when an organization owner [registers a new self-hosted runner](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-organization).
| `remove_actions_secret` | Triggered when a organization admin removes a {% data variables.product.prodname_actions %} secret.{% endif %}{% if currentVersion == "free-pro-team@latest"%}
| `register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to an organization](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-organization)."
| `remove_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is removed.{% endif %}{% if currentVersion == "free-pro-team@latest"%}
| `remove_billing_manager` | Triggered when an [owner removes a billing manager from an organization](/articles/removing-a-billing-manager-from-your-organization/) or when [two-factor authentication is required in an organization](/articles/requiring-two-factor-authentication-in-your-organization) and a billing manager doesn't use 2FA or disables 2FA. |{% endif %}
| `remove_member` | Triggered when an [owner removes a member from an organization](/articles/removing-a-member-from-your-organization/){% if currentVersion != "github-ae@latest" %} or when [two-factor authentication is required in an organization](/articles/requiring-two-factor-authentication-in-your-organization) and an organization member doesn't use 2FA or disables 2FA{% endif %}. Also triggered when an [organization member removes themselves](/articles/removing-yourself-from-an-organization/) from an organization.|
| `remove_outside_collaborator` | Triggered when an owner removes an outside collaborator from an organization{% if currentVersion != "github-ae@latest" %} or when [two-factor authentication is required in an organization](/articles/requiring-two-factor-authentication-in-your-organization) and an outside collaborator does not use 2FA or disables 2FA{% endif %}. |{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `remove_self_hosted_runner` | Triggered when an organization owner [removes a self-hosted runner](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-an-organization). {% endif %}{% if currentVersion == "free-pro-team@latest" %}
| `remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see "[Removing a runner from an organization](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-an-organization)." {% endif %}{% if currentVersion == "free-pro-team@latest" %}
| `revoke_external_identity` | Triggered when an organization owner revokes a member's linked identity. For more information, see "[Viewing and managing a member's SAML access to your organization](/github/setting-up-and-managing-organizations-and-teams/viewing-and-managing-a-members-saml-access-to-your-organization#viewing-and-revoking-a-linked-identity)."
| `revoke_sso_session` | Triggered when an organization owner revokes a member's SAML session. For more information, see "[Viewing and managing a member's SAML access to your organization](/github/setting-up-and-managing-organizations-and-teams/viewing-and-managing-a-members-saml-access-to-your-organization#viewing-and-revoking-a-linked-identity)." {% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `runner_group_created` | Triggered when an organization admin [creates a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-organization).
| `runner_group_removed` | Triggered when an organization admin removes a self-hosted runner group.
| `runner_group_renamed` | Triggered when an organization admin renames a self-hosted runner group.
| `runner_group_runners_added` | Triggered when an organization admin [adds a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group).
| `runner_group_runners_removed` | Triggered when an organization admin removes a self-hosted runner from a group. {% endif %}{% if currentVersion == "free-pro-team@latest"%}
| `runner_group_created` | Triggered when a self-hosted runner group is created. For more information, see "[Creating a self-hosted runner group for an organization](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-organization)."
| `runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)."
| `runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see [Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group).
| `runner_group_runner_removed` | Triggered when a self-hosted runner is removed from a group. {% endif %}{% if currentVersion == "free-pro-team@latest"%}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."{% endif %}
| `unblock_user` | Triggered when an organization owner [unblocks a user from an organization](/articles/unblocking-a-user-from-your-organization).{% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `update_actions_secret` | Triggered when a organization admin updates a {% data variables.product.prodname_actions %} secret.{% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.22" or currentVersion == "github-ae@latest" %}
| `update_actions_secret` |Triggered when a {% data variables.product.prodname_actions %} secret is updated.{% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.22" or currentVersion == "github-ae@latest" %}
| `update_new_repository_default_branch_setting` | Triggered when an owner changes the name of the default branch for new repositories in the organization. For more information, see "[Managing the default branch name for repositories in your organization](/github/setting-up-and-managing-organizations-and-teams/managing-the-default-branch-name-for-repositories-in-your-organization)."{% endif %}
| `update_default_repository_permission` | Triggered when an owner changes the default repository permission level for organization members.
| `update_member` | Triggered when an owner changes a person's role from owner to member or member to owner.
@ -476,20 +483,21 @@ For more information, see "[Managing the publication of {% data variables.produc
| `config.lock_anonymous_git_access` | Triggered when a repository's [anonymous Git read access setting is locked](/enterprise/{{ currentVersion }}/admin/guides/user-management/preventing-users-from-changing-anonymous-git-read-access).
| `config.unlock_anonymous_git_access` | Triggered when a repository's [anonymous Git read access setting is unlocked](/enterprise/{{ currentVersion }}/admin/guides/user-management/preventing-users-from-changing-anonymous-git-read-access).{% endif %}
| `create` | Triggered when [a new repository is created](/articles/creating-a-new-repository).{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `create_actions_secret` | Triggered when a repository admin [creates a {% data variables.product.prodname_actions %} secret](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-a-repository).{% endif %}
| `create_actions_secret` |Triggered when a {% data variables.product.prodname_actions %} secret is created for a repository. For more information, see "[Creating encrypted secrets for a repository](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-a-repository)."{% endif %}
| `destroy` | Triggered when [a repository is deleted](/articles/deleting-a-repository).{% if currentVersion == "free-pro-team@latest" %}
| `disable` | Triggered when a repository is disabled (e.g., for [insufficient funds](/articles/unlocking-a-locked-account)).{% endif %}
| `enable` | Triggered when a repository is reenabled.{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `remove_actions_secret` | Triggered when a repository admin removes a {% data variables.product.prodname_actions %} secret.{% endif %}
| `remove_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is removed.{% endif %}
| `remove_member` | Triggered when a user is [removed from a repository as a collaborator](/articles/removing-a-collaborator-from-a-personal-repository).{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `register_self_hosted_runner` | Triggered when a repository admin [registers a new self-hosted runner](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository).
| `remove_self_hosted_runner` | Triggered when a repository admin [removes a self-hosted runner](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository). {% endif %}
| `register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to a repository](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository)."
| `remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see "[Removing a runner from a repository](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository)." {% endif %}
| `remove_topic` | Triggered when a repository admin removes a topic from a repository.
| `rename` | Triggered when [a repository is renamed](/articles/renaming-a-repository).
| `rename` | Triggered when [a repository is renamed](/articles/renaming-a-repository).{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."{% endif %}
| `transfer` | Triggered when [a repository is transferred](/articles/how-to-transfer-a-repository).
| `transfer_start` | Triggered when a repository transfer is about to occur.
| `unarchived` | Triggered when a repository admin unarchives a repository.{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| `update_actions_secret` | Triggered when a repository admin updates a {% data variables.product.prodname_actions %} secret.{% endif %}
| `update_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is updated.{% endif %}
{% if currentVersion == "free-pro-team@latest" %}
@ -608,6 +616,13 @@ For more information, see "[Managing the publication of {% data variables.produc
| `disable` | Triggered when an organization owner disables team discussions for an organization. For more information, see "[Disabling team discussions for your organization](/articles/disabling-team-discussions-for-your-organization)."
| `enable` | Triggered when an organization owner enables team discussions for an organization.
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
#### `workflows` category actions
{% data reusables.actions.actions-audit-events-workflow %}
{% endif %}
### Further reading
- "[Keeping your organization secure](/articles/keeping-your-organization-secure)"

Просмотреть файл

@ -4,7 +4,7 @@ versions:
free-pro-team: '*'
---
Version Effective Date: December 14, 2020
Version Effective Date: February 22, 2021
When you create an Account, you're given access to lots of different features and products that are all a part of the Service. Because many of these features and products offer different functionality, they may require additional terms and conditions specific to that feature or product. Below, we've listed those features and products, along with the corresponding additional terms that apply to your use of them.
@ -39,9 +39,24 @@ If you enable Git Large File Storage ("Git LFS") on your Account, you'll be able
### 4. Pages
Each Account comes with access to the [GitHub Pages static hosting service](/github/working-with-github-pages/about-github-pages). This hosting service is intended to host static web pages for All Users, but primarily as a showcase for personal and organizational projects. Some monetization efforts are permitted on Pages, such as donation buttons and crowdfunding links.
Each Account comes with access to the [GitHub Pages static hosting service](/github/working-with-github-pages/about-github-pages). This hosting service is intended to host static web pages for All Users, but primarily as a showcase for personal and organizational projects.
GitHub Pages are subject to some specific bandwidth and usage limits, and may not be appropriate for some high-bandwidth uses or other prohibited uses. Please see our [GitHub Pages guidelines](/github/working-with-github-pages/about-github-pages) for more information. GitHub reserves the right at all times to reclaim any GitHub subdomain without liability.
GitHub Pages is not intended for or allowed to be used as a free web hosting service to run your online business, e-commerce site, or any other website that is primarily directed at either facilitating commercial transactions or providing commercial software as a service (SaaS). Some monetization efforts are permitted on Pages, such as donation buttons and crowdfunding links.
#### a. Bandwidth and Usage Limits
GitHub Pages are subject to some specific bandwidth and usage limits, and may not be appropriate for some high-bandwidth uses. Please see our [GitHub Pages guidelines](/github/working-with-github-pages/about-github-pages) for more information.
#### b. Prohibited Uses
Prohibited uses of GitHub Pages include
- Content or activity that is illegal or otherwise prohibited by our [Terms of Service](/github/site-policy/github-terms-of-service), [Acceptable Use Policies](/github/site-policy/github-acceptable-use-policies) or [Community Guidelines](/github/site-policy/github-community-guidelines)
- Violent or threatening content or activity
- Excessive automated bulk activity (for example, spamming)
- Activity that compromises GitHub users or GitHub services
- Get-rich-quick schemes
- Sexually obscene content
- Content that misrepresents your identity or site purpose
If you have questions about whether your use or intended use falls into these categories, please contact [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://premium.githubsupport.com/). GitHub reserves the right at all times to reclaim any GitHub subdomain without liability.
### 5. Actions and Packages

Просмотреть файл

@ -91,9 +91,9 @@ You can download or create Jekyll plugins to extend the functionality of Jekyll
- [`jekyll-titles-from-headings`](https://github.com/benbalter/jekyll-titles-from-headings)
- [`jekyll-relative-links`](https://github.com/benbalter/jekyll-relative-links)
You can enable additional plugins by adding the plugin's gem to the `plugins` setting in your *_config.yml* file. For more information, see "[Configuration](https://jekyllrb.com/docs/configuration/)" in the Jekyll documentation. For a list of supported plugins, see "[Dependency versions](https://pages.github.com/versions/)" on the {% data variables.product.prodname_pages %} site.
You can enable additional plugins by adding the plugin's gem to the `plugins` setting in your *_config.yml* file. For more information, see "[Configuration](https://jekyllrb.com/docs/configuration/)" in the Jekyll documentation.
For usage information for a specific plugin, see the plugin's documentation.
For a list of supported plugins, see "[Dependency versions](https://pages.github.com/versions/)" on the {% data variables.product.prodname_pages %} site. For usage information for a specific plugin, see the plugin's documentation.
{% tip %}

Просмотреть файл

@ -132,17 +132,7 @@ If your site exceeds these usage quotas, we may not be able to serve your site,
{% data variables.product.prodname_pages %} is not intended for or allowed to be used as a free web hosting service to run your online business, e-commerce site, or any other website that is primarily directed at either facilitating commercial transactions or providing commercial software as a service (SaaS).
Additionally, {% data variables.product.prodname_pages %} sites must refrain from:
- Content or activity that is illegal or otherwise prohibited by our [Terms of Service](/articles/github-terms-of-service/) or [Community Guidelines](/articles/github-community-guidelines/)
- Violent or threatening content or activity
- Excessive automated bulk activity (for example, spamming)
- Activity that compromises GitHub users or GitHub services
- Get-rich-quick schemes
- Sexually obscene content
- Content that misrepresents your identity or site purpose
If you have questions about whether your use or intended use falls into these categories, please contact {% data variables.contact.contact_support %}.
In addition, {% data variables.product.prodname_dotcom %} does not allow {% data variables.product.prodname_pages %} to be used for certain purposes or activities. For a list of prohibited uses, see "[{% data variables.product.prodname_dotcom %}'s Additional Product Terms for {% data variables.product.prodname_pages %}](/github/site-policy/github-additional-product-terms#4-pages)."
{% endif %}
### MIME types on {% data variables.product.prodname_pages %}

Просмотреть файл

@ -35,7 +35,7 @@ The `dig` command, which can be used to verify correct configuration of DNS reco
### Configuring a subdomain
To set up a `www` or custom subdomain, such as `www.example.com` or `blog.example.com`, you must create a _CNAME_ file in your site's repository and configure a `CNAME` record with your DNS provider.
To set up a `www` or custom subdomain, such as `www.example.com` or `blog.example.com`, you must add your domain in the repository settings, which will create a CNAME file in your sites repository. After that, configure a CNAME record with your DNS provider.
{% data reusables.pages.navigate-site-repo %}
{% data reusables.repositories.sidebar-settings %}

Просмотреть файл

@ -20,3 +20,5 @@ versions:
{% link_in_list /using-the-explorer %}
{% link_in_list /managing-enterprise-accounts %}
{% link_in_list /using-the-graphql-api-for-discussions %}

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -152,6 +152,15 @@ You can communicate that a transient environment no longer exists by setting its
{% if operation.subcategory == 'deployments' %}{% include rest_operation %}{% endif %}
{% endfor %}
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %}
## Environments
The Environments API allows you to create, configure, and delete environments. For more information about environments, see "[Environments](/actions/reference/environments)."
{% for operation in currentRestOperations %}
{% if operation.subcategory == 'environments' %}{% include rest_operation %}{% endif %}
{% endfor %}
{% endif %}
## Forks
{% for operation in currentRestOperations %}

Просмотреть файл

@ -37067,7 +37067,7 @@ type VerifiableDomain implements Node {
id: ID!
"""
Whether this domain is required to exist for an organization policy to be enforced.
Whether this domain is required to exist for an organization or enterprise policy to be enforced.
"""
isRequiredForPolicyEnforcement: Boolean!

Просмотреть файл

@ -40380,7 +40380,7 @@ type VerifiableDomain implements Node {
id: ID!
"""
Whether this domain is required to exist for an organization policy to be enforced.
Whether this domain is required to exist for an organization or enterprise policy to be enforced.
"""
isRequiredForPolicyEnforcement: Boolean!

Просмотреть файл

@ -1 +1 @@
Encrypted secrets allow you to store sensitive information, such as access tokens, in your repository or organization.
Encrypted secrets allow you to store sensitive information, such as access tokens, in your repository{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %}, repository environments,{% endif %} or organization.

Просмотреть файл

@ -0,0 +1,10 @@
| Action | Description
|------------------|-------------------
| `register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to an enterprise](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-enterprise)."
| `runner_group_created` | Triggered when a self-hosted runner group is created. For more information, see "[Creating a self-hosted runner group for an enterprise](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-enterprise).
| `runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)."
| `runner_group_runner_removed` | Triggered when a self-hosted runner is removed from a group.
| `runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see "[Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)."
| `runner_group_updated` | Triggered when the configuration of a self-hosted runner group is changed. For more information, see "[Changing the access policy of a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."
| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."

Просмотреть файл

@ -0,0 +1,8 @@
| Action | Description
|------------------|-------------------
| `cancel_workflow_run` | Triggered when a workflow run has been cancelled. For more information, see "[Canceling a workflow](/actions/managing-workflow-runs/canceling-a-workflow)."
| `completed_workflow_run` | Triggered when a workflow status changes to `completed`. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Viewing workflow run history](/actions/managing-workflow-runs/viewing-workflow-run-history)."
| `created_workflow_run` | Triggered when a workflow run is created. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Create an example workflow](/actions/learn-github-actions/introduction-to-github-actions#create-an-example-workflow)."
| `delete_workflow_run` | Triggered when a workflow run is deleted. For more information, see "[Deleting a workflow run](/actions/managing-workflow-runs/deleting-a-workflow-run)."
| `rerun_workflow_run` | Triggered when a workflow run is re-run. For more information, see "[Re-running a workflow](/actions/managing-workflow-runs/re-running-a-workflow)."
| `prepared_workflow_job` | Triggered when a workflow job is started. Includes the list of secrets that were provided to the job. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)."

Просмотреть файл

@ -1,5 +1,5 @@
If your site is an independent project, you can create a new repository to store your site's source code. If your site is associated with an existing project, you can add the source code {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.22" or currentVersion == "github-ae@latest" %}to that project's repository, in a `/docs` folder on the default branch or on a different branch.{% else %}for your site to a `gh-pages` branch or a `docs` folder on the `master` branch in that project's repository.{% endif %} For example, if you're creating a site to publish documentation for a project that's already on {% data variables.product.product_name %}, you may want to store the source code for the site in the same repository as the project.
{% if currentVersion == "free-pro-team@latest" %}If the account that owns the repository uses {% data variables.product.prodname_free_user %} or {% data variables.product.prodname_free_team %}, the repository must be public.{% endif %}
{% if currentVersion == "free-pro-team@latest" %}If the account that owns the repository uses {% data variables.product.prodname_free_user %} or {% data variables.product.prodname_free_team %} for organizations, the repository must be public.{% endif %}
If you want to create a site in an existing repository, skip to the "[Creating your site](#creating-your-site)" section.

Просмотреть файл

@ -6,6 +6,7 @@ Key | Type | Description
`check_run[conclusion]`|`string` | The result of the completed check run. Can be one of `success`, `failure`, `neutral`, `cancelled`, `timed_out`, {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.19" or currentVersion == "github-ae@latest" %}`action_required` or `stale`{% else %}or `action_required`{% endif %}. This value will be `null` until the check run has `completed`.
`check_run[name]`|`string` | The name of the check run.
`check_run[check_suite][id]`|`integer` | The id of the check suite that this check run is part of.
`check_run[check_suite][pull_requests]`|`array`| An array of pull requests that match this check suite. A pull request matches a check suite if they have the same `head_sha` and `head_branch`. When the check suite's `head_branch` is in a forked repository it will be `null` and the `pull_requests` array will be empty.
`check_run[check_suite][pull_requests]`|`array`| An array of pull requests that match this check suite. A pull request matches a check suite if they have the same `head_sha` and `head_branch`. When the check suite's `head_branch` is in a forked repository it will be `null` and the `pull_requests` array will be empty.{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %}
`deployment`|`object`| A deployment to a repository environment. This will only be populated if the check run was created by a {% data variables.product.prodname_actions %} workflow job that references an environment.{% endif %}
`requested_action`|`object` | The action requested by the user.
`requested_action[identifier]`|`string` | The integrator reference of the action requested by the user.

Просмотреть файл

@ -0,0 +1,3 @@
<button class="arrow-for-scrolling-top" id="js-scroll-top">
{% octicon "chevron-up" %}
</button>

Просмотреть файл

@ -1,8 +1,6 @@
import murmur from 'imurmurhash'
import { getUserEventsId, sendEvent } from './events'
import h from './hyperscript'
import { updateDisplay, submitForm } from './helpfulness'
// import h from './hyperscript'
const TREATMENT = 'TREATMENT'
const CONTROL = 'CONTROL'
@ -29,79 +27,4 @@ export default function () {
// const x = document.querySelector(...)
// x.addEventListener('click', () => { sendSuccess(testName) })
// if (xbucket === TREATMENT) applyTreatment(x)
const testName = 'survey-stars'
const xbucket = bucket(testName)
const form = document.querySelector('.js-helpfulness')
if (!form) return
// Overwrites the default handler for helpfulness survey...
form.addEventListener('submit', evt => {
evt.preventDefault()
sendSuccess(testName)
submitForm(form)
updateDisplay(form, 'end')
})
if (xbucket === TREATMENT) applyTreatment(form)
}
function applyTreatment (form) {
const p = form.querySelector('.radio-group')
p.innerHTML = ''
const buttons = [1, 2, 3, 4, 5].map(i =>
h(
'button',
{
'data-value': i,
'aria-label': i,
class: 'btn-link tooltipped tooltipped-n'
},
h(
'span',
{
class: 'star-empty f3'
},
'☆'
),
h(
'span',
{
class: 'star-full f3',
hidden: true
},
'★'
)
)
)
const input = h('input', {
name: 'helpfulness-vote',
type: 'hidden'
})
buttons.forEach(btn => p.appendChild(btn))
p.appendChild(input)
buttons.forEach((btn, i) => {
btn.addEventListener('click', evt => {
evt.preventDefault()
updateBtnDisplay(i)
submitForm(form)
updateDisplay(form, i > 2 ? 'yes' : 'no')
})
})
function updateBtnDisplay (i) {
buttons.forEach((xbtn, xi) => {
if (xi <= i) {
xbtn.querySelector('.star-full').removeAttribute('hidden')
xbtn.querySelector('.star-empty').setAttribute('hidden', true)
} else {
xbtn.querySelector('.star-full').setAttribute('hidden', true)
xbtn.querySelector('.star-empty').removeAttribute('hidden')
}
})
input.setAttribute('value', i > 2 ? 'Yes' : 'No')
}
}

Просмотреть файл

@ -8,7 +8,7 @@ function hideElement (el) {
el.setAttribute('hidden', true)
}
export function updateDisplay (form, state) {
function updateDisplay (form, state) {
Array.from(
form.querySelectorAll(
['start', 'yes', 'no', 'end']
@ -21,7 +21,7 @@ export function updateDisplay (form, state) {
.forEach(showElement)
}
export function submitForm (form) {
function submitForm (form) {
const formData = new FormData(form)
const data = Object.fromEntries(
Array.from(formData.entries())

Просмотреть файл

@ -2,6 +2,7 @@
import '../stylesheets/index.scss'
import displayPlatformSpecificContent from './display-platform-specific-content'
import explorer from './explorer'
import scrollUp from './scroll-up'
import search from './search'
import nav from './nav'
import browserDateFormatter from 'browser-date-formatter'
@ -23,6 +24,7 @@ import airgapLinks from './airgap-links'
document.addEventListener('DOMContentLoaded', async () => {
displayPlatformSpecificContent()
explorer()
scrollUp()
search()
nav()
browserDateFormatter()

22
javascripts/scroll-up.js Normal file
Просмотреть файл

@ -0,0 +1,22 @@
export default function () {
// function to scroll up to page top
const PageTopBtn = document.getElementById('js-scroll-top')
if (!PageTopBtn) return
PageTopBtn.addEventListener('click', (e) => {
window.scrollTo({
top: 0,
behavior: 'smooth'
})
})
// show scroll button only when display is scroll down
window.addEventListener('scroll', function () {
const y = document.documentElement.scrollTop // get the height from page top
if (y < 100) {
PageTopBtn.classList.remove('show')
} else if (y >= 100) {
PageTopBtn.classList.add('show')
}
})
}

Просмотреть файл

@ -15,6 +15,7 @@
{% endif %}
{% include support-section %}
{% include small-footer %}
{% include scroll-button %}
</main>
</body>
</html>

Просмотреть файл

@ -47,8 +47,8 @@ const nextDeprecationDate = dates[oldestSupported].deprecationDate
const isOldestReleaseDeprecated = new Date() > new Date(nextDeprecationDate)
const deprecatedOnNewSite = deprecated.filter(version => versionSatisfiesRange(version, '>=2.13'))
const firstVersionDeprecatedOnNewSite = '2.13'
// starting from 2.18, we updated the archival script to create stubbed HTML redirect files
const lastVersionWithoutStubbedRedirectFiles = '2.17'
// starting from 2.18, we updated the archival script to create a redirects.json top-level file in the archived repo
const lastVersionWithoutArchivedRedirectsFile = '2.17'
// last version using paths like /enterprise/<release>/<user>/<product>/<category>/<article>
// instead of /enterprise-server@<release>/<product>/<category>/<article>
const lastReleaseWithLegacyFormat = '2.18'
@ -68,7 +68,7 @@ module.exports = {
deprecatedOnNewSite,
dates,
firstVersionDeprecatedOnNewSite,
lastVersionWithoutStubbedRedirectFiles,
lastVersionWithoutArchivedRedirectsFile,
lastReleaseWithLegacyFormat,
deprecatedReleasesWithLegacyFormat,
deprecatedReleasesWithNewFormat,

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -55978,7 +55978,7 @@
},
{
"name": "isRequiredForPolicyEnforcement",
"description": "<p>Whether this domain is required to exist for an organization policy to be enforced.</p>",
"description": "<p>Whether this domain is required to exist for an organization or enterprise policy to be enforced.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",

Просмотреть файл

@ -51817,7 +51817,7 @@
},
{
"name": "isRequiredForPolicyEnforcement",
"description": "<p>Whether this domain is required to exist for an organization policy to be enforced.</p>",
"description": "<p>Whether this domain is required to exist for an organization or enterprise policy to be enforced.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",

Просмотреть файл

@ -53,10 +53,6 @@ module.exports = function getOldPathsFromPath (currentPath, languageCode, curren
.replace('/user/', '/'))
}
// create old path /enterprise/foo from current path /enterprise/latest/user/foo
oldPaths.add(currentPath
.replace(`/enterprise/${latest}/user/`, '/enterprise/'))
// ------ END LEGACY VERSION FORMAT REPLACEMENTS ------//
// ------ BEGIN MODERN VERSION FORMAT REPLACEMENTS ------//

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -37,8 +37,6 @@ module.exports = async function buildSiteTree (pageMap, site, redirects) {
return
}
product.href = path.posix.join('/', languageCode, item.href)
// find the product TOC page so we have access to the TOC items
const page = findPage(item.href, pageMap, redirects)
@ -47,9 +45,9 @@ module.exports = async function buildSiteTree (pageMap, site, redirects) {
if (!getApplicableVersions(page.versions).includes(version)) return
// item.hrefs have a default version via lib/all-products, so update to the current version
const versionedProductHref = removeFPTFromPath(path.join('/', languageCode, version, getPathWithoutVersion(item.href)))
product.href = removeFPTFromPath(path.join('/', languageCode, version, getPathWithoutVersion(item.href)))
product.categories = buildCategoriesTree(page.tocItems, versionedProductHref, pageMap, redirects, version)
product.categories = buildCategoriesTree(page.tocItems, product.href, pageMap, redirects, version)
productTree[item.id] = product
return null

Просмотреть файл

@ -190,7 +190,20 @@
}
}
}
]
],
"deployment": {
"url": "https://api.github.com/repos/Codertocat/Hello-World/deployments/326191728",
"id": 326191728,
"node_id": "MDEwOkRlcGxveW1lbnQzMjYxOTE3Mjg=",
"task": "deploy",
"original_environment": "lab",
"environment": "lab",
"description": null,
"created_at": "2021-02-18T08:22:48Z",
"updated_at": "2021-02-18T09:47:16Z",
"statuses_url": "https://api.github.com/repos/Codertocat/Hello-World/deployments/326191728/statuses",
"repository_url": "https://api.github.com/repos/Codertocat/Hello-World"
}
},
"repository": {
"id": 186853002,

Просмотреть файл

@ -190,7 +190,20 @@
}
}
}
]
],
"deployment": {
"url": "https://api.github.com/repos/Codertocat/Hello-World/deployments/326191728",
"id": 326191728,
"node_id": "MDEwOkRlcGxveW1lbnQzMjYxOTE3Mjg=",
"task": "deploy",
"original_environment": "lab",
"environment": "lab",
"description": null,
"created_at": "2021-02-18T08:22:48Z",
"updated_at": "2021-02-18T09:47:16Z",
"statuses_url": "https://api.github.com/repos/Codertocat/Hello-World/deployments/326191728/statuses",
"repository_url": "https://api.github.com/repos/Codertocat/Hello-World"
}
},
"repository": {
"id": 186853002,

Просмотреть файл

@ -95,7 +95,20 @@
},
"pull_requests": [
]
],
"deployment": {
"url": "https://api.github.com/repos/Codertocat/Hello-World/deployments/326191728",
"id": 326191728,
"node_id": "MDEwOkRlcGxveW1lbnQzMjYxOTE3Mjg=",
"task": "deploy",
"original_environment": "lab",
"environment": "lab",
"description": null,
"created_at": "2021-02-18T08:22:48Z",
"updated_at": "2021-02-18T09:47:16Z",
"statuses_url": "https://api.github.com/repos/Codertocat/Hello-World/deployments/326191728/statuses",
"repository_url": "https://api.github.com/repos/Codertocat/Hello-World"
}
},
"repository": {
"id": 526,

Просмотреть файл

@ -1,6 +1,6 @@
const path = require('path')
const slash = require('slash')
const { firstVersionDeprecatedOnNewSite, lastVersionWithoutStubbedRedirectFiles } = require('../lib/enterprise-server-releases')
const { firstVersionDeprecatedOnNewSite, lastVersionWithoutArchivedRedirectsFile } = require('../lib/enterprise-server-releases')
const patterns = require('../lib/patterns')
const versionSatisfiesRange = require('../lib/version-satisfies-range')
const isArchivedVersion = require('../lib/is-archived-version')
@ -25,21 +25,43 @@ module.exports = async (req, res, next) => {
}
// find redirects for versions between 2.13 and 2.17
// starting with 2.18, we updated the archival script to create stubbed HTML redirect files
// starting with 2.18, we updated the archival script to create a redirects.json file
if (versionSatisfiesRange(requestedVersion, `>=${firstVersionDeprecatedOnNewSite}`) &&
versionSatisfiesRange(requestedVersion, `<=${lastVersionWithoutStubbedRedirectFiles}`)) {
versionSatisfiesRange(requestedVersion, `<=${lastVersionWithoutArchivedRedirectsFile}`)) {
const redirect = archvivedRedirects[req.path]
if (redirect && redirect !== req.path) {
return res.redirect(301, redirect)
}
}
let reqPath = req.path
let isRedirect = false
if (versionSatisfiesRange(requestedVersion, `>${lastVersionWithoutArchivedRedirectsFile}`)) {
try {
const r = await got(getProxyPath(req.path, requestedVersion))
const res = await got(getProxyPath('redirects.json', requestedVersion))
const redirectJson = JSON.parse(res.body)
if (redirectJson[req.path]) {
isRedirect = true
}
reqPath = redirectJson[req.path] || req.path
} catch (err) {
// nooop
}
}
try {
const r = await got(getProxyPath(reqPath, requestedVersion))
res.set('content-type', r.headers['content-type'])
res.set('x-robots-tag', 'noindex')
// make the stubbed redirect files added in >=2.18 return 301 instead of 200
// make redirects found via redirects.json return 301 instead of 200
if (isRedirect) {
res.status(301)
res.set('location', reqPath)
}
// make stubbed redirect files (which exist in versions <2.13) return 301 instead of 200
const staticRedirect = r.body.match(patterns.staticRedirect)
if (staticRedirect) {
res.status(301)
@ -73,7 +95,7 @@ function getProxyPath (reqPath, requestedVersion) {
// this workaround finds potentially relevant frontmatter redirects in currently supported pages
function getFallbackRedirects (req, requestedVersion) {
if (versionSatisfiesRange(requestedVersion, `<${firstVersionDeprecatedOnNewSite}`)) return
if (versionSatisfiesRange(requestedVersion, `>${lastVersionWithoutStubbedRedirectFiles}`)) return
if (versionSatisfiesRange(requestedVersion, `>${lastVersionWithoutArchivedRedirectsFile}`)) return
return archivedFrontmatterFallbacks.find(arrayOfFallbacks => arrayOfFallbacks.includes(req.path))
}

Просмотреть файл

@ -9,7 +9,6 @@ const host = `http://localhost:${port}`
const scrape = require('website-scraper')
const program = require('commander')
const rimraf = require('rimraf').sync
const mkdirp = require('mkdirp').sync
const version = require('../../lib/enterprise-server-releases').oldestSupported
const archivalRepoName = 'help-docs-archived-enterprise-versions'
const archivalRepoUrl = `https://github.com/github/${archivalRepoName}`
@ -173,7 +172,7 @@ async function main () {
console.log(`\n\ndone scraping! added files to ${path.relative(process.cwd(), finalDirectory)}\n`)
// create redirect html files to preserve frontmatter redirects
await createRedirectPages(permalinksPerVersion, pageMap, finalDirectory)
await createRedirectsFile(permalinksPerVersion, pageMap, finalDirectory)
console.log(`next step: deprecate ${version} in lib/enterprise-server-releases.js`)
@ -181,10 +180,12 @@ async function main () {
})
}
async function createRedirectPages (permalinks, pageMap, finalDirectory) {
async function createRedirectsFile (permalinks, pageMap, finalDirectory) {
const pagesPerVersion = permalinks.map(permalink => pageMap[permalink])
const redirects = await loadRedirects(pagesPerVersion, pageMap)
const redirectsPerVersion = {}
Object.entries(redirects).forEach(([oldPath, newPath]) => {
// remove any liquid variables that sneak in
oldPath = oldPath
@ -193,31 +194,8 @@ async function createRedirectPages (permalinks, pageMap, finalDirectory) {
// ignore any old paths that are not in this version
if (!(oldPath.includes(`/enterprise-server@${version}`) || oldPath.includes(`/enterprise/${version}`))) return
const fullPath = path.join(finalDirectory, oldPath)
const filename = `${fullPath}/index.html`
const html = getRedirectHtml(newPath)
mkdirp(fullPath)
fs.writeFileSync(filename, html)
redirectsPerVersion[oldPath] = newPath
})
console.log('done creating redirect files!\n')
}
// redirect html files already exist in <=2.12 because these versions were deprecated on the old static site
function getRedirectHtml (newPath) {
return `<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Redirecting...</title>
<link rel="canonical" href="${newPath}">
<meta http-equiv="refresh" content="0; url=${newPath}">
</head>
<body>
<h1>Redirecting...</h1>
<a href="${newPath}">Click here if you are not redirected.</a>
<script>location='${newPath}'</script>
</body>
</html>`
fs.writeFileSync(path.posix.join(finalDirectory, 'redirects.json'), JSON.stringify(redirectsPerVersion, null, 2))
}

Просмотреть файл

@ -47,6 +47,7 @@ $marketing-font-path: "/dist/fonts/";
@import "search.scss";
@import "overrides.scss";
@import "sidebar.scss";
@import "scroll-button.scss";
@import "explorer.scss";
// from https://unpkg.com/highlight.js@9.15.8/styles/github.css
@import "syntax-highlighting.scss";

Просмотреть файл

@ -0,0 +1,18 @@
button.arrow-for-scrolling-top {
opacity: 0;
transition: 1s;
background-color: #0367d6;
color: #fff;
position: fixed;
bottom: 10px;
right: 10px;
display: block;
width: 40px;
height: 40px;
border-radius: 50%;
&.show {
opacity: 1;
border: none;
transition: 1s;
}
}

Просмотреть файл

@ -85,7 +85,7 @@ describe('browser search', () => {
})
})
describe.skip('helpfulness', () => {
describe('helpfulness', () => {
it('sends an event to /events when submitting form', async () => {
// Visit a page that displays the prompt
await page.goto('http://localhost:4001/en/actions/getting-started-with-github-actions/about-github-actions')

Просмотреть файл

@ -30,6 +30,12 @@ describe('enterprise deprecation', () => {
expect(res.headers.location).toBe('/en/enterprise/2.15/user/articles/viewing-contributions-on-your-profile')
})
test('can access redirects from redirects.json in deprecated enterprise content >2.17', async () => {
const res = await get('/enterprise/2.19/admin/categories/time')
expect(res.statusCode).toBe(301)
expect(res.headers.location).toBe('/en/enterprise-server@2.19/admin/configuration/configuring-time-synchronization')
})
test('handles requests for deprecated Enterprise pages ( >=2.13 )', async () => {
expect(enterpriseServerReleases.deprecated.includes('2.13')).toBe(true)
const $ = await getDOM('/en/enterprise/2.13/user/articles/about-branches')

Просмотреть файл

@ -120,6 +120,7 @@ Du musst sicherstellen, dass der Rechner über den entsprechenden Netzwerkzugrif
github.com
api.github.com
*.actions.githubusercontent.com
github-releases.githubusercontent.com
codeload.github.com
```

Просмотреть файл

@ -120,6 +120,7 @@ You must ensure that the machine has the appropriate network access to communica
github.com
api.github.com
*.actions.githubusercontent.com
github-releases.githubusercontent.com
codeload.github.com
```

Просмотреть файл

@ -120,6 +120,7 @@ The self-hosted runner polls {% data variables.product.prodname_dotcom %} to ret
github.com
api.github.com
*.actions.githubusercontent.com
github-releases.githubusercontent.com
codeload.github.com
```

Просмотреть файл

@ -120,6 +120,7 @@ You must ensure that the machine has the appropriate network access to communica
github.com
api.github.com
*.actions.githubusercontent.com
github-releases.githubusercontent.com
codeload.github.com
```

Просмотреть файл

@ -120,6 +120,7 @@ Você deve garantir que a máquina tenha acesso adequado à rede para comunicar-
github.com
api.github.com
*.actions.githubusercontent.com
github-releases.githubusercontent.com
codeload.github.com
```

Просмотреть файл

@ -120,6 +120,7 @@ You must ensure that the machine has the appropriate network access to communica
github.com
api.github.com
*.actions.githubusercontent.com
github-releases.githubusercontent.com
codeload.github.com
```

Просмотреть файл

@ -120,6 +120,7 @@ The following processor architectures are supported for the self-hosted runner a
github.com
api.github.com
*.actions.githubusercontent.com
github-releases.githubusercontent.com
codeload.github.com
```