Merge branch 'main' into avinal-improve-docs

This commit is contained in:
Martin Lopes 2021-01-20 10:16:54 +10:00 коммит произвёл GitHub
Родитель 58c63b1626 e449c7aa0d
Коммит e98cfc914a
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
5301 изменённых файлов: 169354 добавлений и 24285 удалений

2
.github/ISSUE_TEMPLATE/improve-the-site.md поставляемый
Просмотреть файл

@ -22,7 +22,7 @@ Check to make sure someone hasn't already opened a similar issue: https://github
### What is the current behavior?
<!-- include links to articles where you're seeing a problem, screenshots, what browser you're using, etc. -->
<!-- Include links to articles where you're seeing a problem, screenshots, what browser you're using, etc. -->
### What changes are you suggesting?

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

@ -21,7 +21,7 @@ module.exports = [
'github/codeql-action/init@v1',
'ianwalter/puppeteer@12728ddef82390d1ecd4732fb543f62177392fbb',
'juliangruber/approve-pull-request-action@c530832d4d346c597332e20e03605aa94fa150a8',
'juliangruber/find-pull-request-action@64d55773c959748ad30a4184f4dc102af1669f7b',
'juliangruber/find-pull-request-action@2fc55e82a6d5d36fe1e7f1848f7e64fd02d99de9',
'juliangruber/read-file-action@e0a316da496006ffd19142f0fd594a1783f3b512',
'lee-dohm/close-matching-issues@22002609b2555fe18f52b8e2e7c07cbf5529e8a8',
'pascalgn/automerge-action@c9bd182',

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

@ -58,12 +58,13 @@ jobs:
github_token: ${{ secrets.OCTOMERGER_PAT_WITH_REPO_AND_WORKFLOW_SCOPE }}
- name: Find pull request
uses: juliangruber/find-pull-request-action@64d55773c959748ad30a4184f4dc102af1669f7b
uses: juliangruber/find-pull-request-action@2fc55e82a6d5d36fe1e7f1848f7e64fd02d99de9
id: find-pull-request
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
branch: repo-sync
base: main
author: Octomerger
- name: Approve pull request
if: ${{ steps.find-pull-request.outputs.number }}

4
.github/workflows/translations.yml поставляемый
Просмотреть файл

@ -17,11 +17,13 @@ jobs:
echo 'The repo is currently frozen! Exiting this workflow.'
exit 1 # prevents further steps from running
- name: Find original Pull Request
uses: juliangruber/find-pull-request-action@64d55773c959748ad30a4184f4dc102af1669f7b
uses: juliangruber/find-pull-request-action@2fc55e82a6d5d36fe1e7f1848f7e64fd02d99de9
id: pr
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
branch: translations
base: main
author: octoglot
- if: ${{ steps.pr.outputs.number }}
name: Check if already labeled
uses: actions/github-script@626af12fe9a53dc2972b48385e7fe7dec79145c9

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

@ -104,7 +104,8 @@ jobs:
body: reviewMessage,
event: 'REQUEST_CHANGES'
})
exit 1 # prevents further steps from running and fails workflow
core.setFailed("It looks like you've modified some files we don't accept contributions for. Please see the review with requested changes for details.")
# When the most recent review was CHANGES_REQUESTED and the existing
# PR no longer contains unallowed changes, dismiss the previous review
- name: Dismiss pull request review

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

@ -186,27 +186,27 @@ jobs:
steps:
- name: Dump GitHub context
env:
GITHUB_CONTEXT: ${{ toJson(github) }}
GITHUB_CONTEXT: ${{ toJSON(github) }}
run: echo "$GITHUB_CONTEXT"
- name: Dump job context
env:
JOB_CONTEXT: ${{ toJson(job) }}
JOB_CONTEXT: ${{ toJSON(job) }}
run: echo "$JOB_CONTEXT"
- name: Dump steps context
env:
STEPS_CONTEXT: ${{ toJson(steps) }}
STEPS_CONTEXT: ${{ toJSON(steps) }}
run: echo "$STEPS_CONTEXT"
- name: Dump runner context
env:
RUNNER_CONTEXT: ${{ toJson(runner) }}
RUNNER_CONTEXT: ${{ toJSON(runner) }}
run: echo "$RUNNER_CONTEXT"
- name: Dump strategy context
env:
STRATEGY_CONTEXT: ${{ toJson(strategy) }}
STRATEGY_CONTEXT: ${{ toJSON(strategy) }}
run: echo "$STRATEGY_CONTEXT"
- name: Dump matrix context
env:
MATRIX_CONTEXT: ${{ toJson(matrix) }}
MATRIX_CONTEXT: ${{ toJSON(matrix) }}
run: echo "$MATRIX_CONTEXT"
```
{% endraw %}
@ -348,7 +348,7 @@ The value for `array` can be an array or a string. All values in `array` are con
`join(github.event.issue.labels.*.name, ', ')` may return 'bug, help wanted'
#### toJson
#### toJSON
`toJSON(value)`
@ -358,13 +358,13 @@ Returns a pretty-print JSON representation of `value`. You can use this function
`toJSON(job)` might return `{ "status": "Success" }`
#### fromJson
#### fromJSON
`fromJSON(value)`
Returns a JSON object for `value`. You can use this function to provide a JSON object as an evaluated expression.
Returns a JSON object or JSON data type for `value`. You can use this function to provide a JSON object as an evaluated expression or to convert environment variables from a string.
##### Example
##### Example returning a JSON object
This workflow sets a JSON matrix in one job, and passes it to the next job using an output and `fromJSON`.
@ -384,12 +384,33 @@ jobs:
needs: job1
runs-on: ubuntu-latest
strategy:
matrix: ${{fromJson(needs.job1.outputs.matrix)}}
matrix: ${{fromJSON(needs.job1.outputs.matrix)}}
steps:
- run: build
```
{% endraw %}
##### Example returning a JSON data type
This workflow uses `fromJSON` to convert environment variables from a string to a Boolean or integer.
{% raw %}
```yaml
name: print
on: push
env:
continue: true
time: 3
jobs:
job1:
runs-on: ubuntu-latest
steps:
- continue-on-error: ${{ fromJSON(env.continue) }}
timeout-minutes: ${{ fromJSON(env.time) }}
run: echo ...
```
{% endraw %}
#### hashFiles
`hashFiles(path)`

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

@ -20,6 +20,8 @@ You can set up {% data variables.product.prodname_code_scanning %} to check the
By default, {% data variables.product.prodname_code_scanning %} analyzes your code periodically on the default branch and during pull requests. For information about managing alerts on a pull request, see "[Triaging {% data variables.product.prodname_code_scanning %} alerts in pull requests](/github/finding-security-vulnerabilities-and-errors-in-your-code/triaging-code-scanning-alerts-in-pull-requests)."
{% data reusables.code-scanning.upload-sarif-alert-limit %}
### About alerts details
Each alert highlights a problem with the code and the name of the tool that identified it. You can see the line of code that triggered the alert, as well as properties of the alert, such as the severity and the nature of the problem. Alerts also tell you when the issue was first introduced. For alerts identified by {% data variables.product.prodname_codeql %} analysis, you will also see information on how to fix the problem.

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

@ -91,6 +91,8 @@ You can configure where the {% data variables.product.prodname_codeql_runner %}
To view the command-line reference for the runner, use the `-h` flag. For example, to list all commands run: `codeql-runner-OS -h`, or to list all the flags available for the `init` command run: `codeql-runner-OS init -h` (where `OS` varies according to the executable that you are using). For more information, see "[Configuring {% data variables.product.prodname_code_scanning %} in your CI system](/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-codeql-code-scanning-in-your-ci-system#codeql-runner-command-reference)."
{% data reusables.code-scanning.upload-sarif-alert-limit %}
#### Basic example
This example runs {% data variables.product.prodname_codeql %} analysis on a Linux CI server for the `octo-org/example-repo` repository hosted on `{% data variables.command_line.git_url_example %}`. The process is very simple because the repository contains only languages that can be analyzed by {% data variables.product.prodname_codeql %} directly, without being built (that is, Go, JavaScript, Python, and TypeScript).

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

@ -40,6 +40,8 @@ If you upload a SARIF file without fingerprint data using the `/code-scanning/sa
You can check a SARIF file is compatible with {% data variables.product.prodname_code_scanning %} by testing it against the {% data variables.product.prodname_dotcom %} ingestion rules. For more information, visit the [Microsoft SARIF validator](https://sarifweb.azurewebsites.net/).
{% data reusables.code-scanning.upload-sarif-alert-limit %}
### Supported SARIF output file properties
If you use a code analysis engine other than {% data variables.product.prodname_codeql %}, you can review the supported SARIF properties to optimize how your analysis results will appear on {% data variables.product.prodname_dotcom %}.
@ -82,6 +84,8 @@ Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.pr
#### `result` object
{% data reusables.code-scanning.upload-sarif-alert-limit %}
| Name | Description |
|----|----|
| `ruleId`| **Optional.** The unique identifier of the rule (`reportingDescriptor.id`). For more information, see the [`reportingDescriptor` object](#reportingdescriptor-object). {% data variables.product.prodname_code_scanning_capc %} uses the rule identifier to filter results by rule on {% data variables.product.prodname_dotcom %}.
@ -89,7 +93,7 @@ Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.pr
| `rule`| **Optional.** A reference used to locate the rule (reporting descriptor) for this result. For more information, see the [`reportingDescriptor` object](#reportingdescriptor-object).
| `level`| **Optional.** The severity of the result. This level overrides the default severity defined by the rule. {% data variables.product.prodname_code_scanning_capc %} uses the level to filter results by severity on {% data variables.product.prodname_dotcom %}.
| `message.text`| **Required.** A message that describes the result. {% data variables.product.prodname_code_scanning_capc %} displays the message text as the title of the result. Only the first sentence of the message will be displayed when visible space is limited.
| `locations[]`| **Required.** The set of locations where the result was detected. Only one location should be included unless the problem can only be corrected by making a change at every specified location. **Note:** At least one location is required for {% data variables.product.prodname_code_scanning %} to display a result. {% data variables.product.prodname_code_scanning_capc %} will use this property to decide which file to annotate with the result. Only the first value of this array is used. All other values are ignored.
| `locations[]`| **Required.** The set of locations where the result was detected up to a maximum of 10. Only one location should be included unless the problem can only be corrected by making a change at every specified location. **Note:** At least one location is required for {% data variables.product.prodname_code_scanning %} to display a result. {% data variables.product.prodname_code_scanning_capc %} will use this property to decide which file to annotate with the result. Only the first value of this array is used. All other values are ignored.
| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Preventing duplicate alerts using fingerprints](#preventing-duplicate-alerts-using-fingerprints)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`.
| `codeFlows[].threadFlows[].locations[]`| **Optional.** An array of `location` objects for a `threadFlow` object, which describes the progress of a program through a thread of execution. A `codeFlow` object describes a pattern of code execution used to detect a result. If code flows are provided, {% data variables.product.prodname_code_scanning %} will expand code flows on {% data variables.product.prodname_dotcom %} for the relevant result. For more information, see the [`location` object](#location-object).
| `relatedLocations[]`| A set of locations relevant to this result. {% data variables.product.prodname_code_scanning_capc %} will link to related locations when they are embedded in the result message. For more information, see the [`location` object](#location-object).

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

@ -39,6 +39,8 @@ The `upload-sarif` action can be configured to run when the `push` and `schedule
If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-sarif-support-for-code-scanning#preventing-duplicate-alerts-using-fingerprints)."
{% data reusables.code-scanning.upload-sarif-alert-limit %}
#### Example workflow for SARIF files generated outside of a repository
You can create a new workflow that uploads SARIF files after you commit them to your repository. This is useful when the SARIF file is generated as an artifact outside of your repository.

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

@ -10,7 +10,7 @@ versions:
{% data variables.product.prodname_dotcom %} has many features that help you improve and maintain the quality of your code. Some of these are included in all plans, for example: dependency graph and {% data variables.product.prodname_dependabot_alerts %}. Other security features require a license for {% data variables.product.prodname_GH_advanced_security %} to run on repositories apart from public repositories on {% data variables.product.prodname_dotcom_the_website %}. (That is, private and internal repositories on {% data variables.product.prodname_dotcom_the_website %}, and all repositories on {% data variables.product.prodname_ghe_server %}.)
For an overview of all security features, see "[About securing your repository](/github/administering-a-repository/about-securing-your-repository#setting-up-your-repository-securely)."
For an overview of all security features, see "[About securing your repository](/github/administering-a-repository/about-securing-your-repository#setting-up-your-repository-securely)." For information about permission requirements for actions related to security features, see "[Repository permission levels for an organization](/github/setting-up-and-managing-organizations-and-teams/repository-permission-levels-for-an-organization#permission-requirements-for-security-features)."
### About {% data variables.product.prodname_advanced_security %} features

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

@ -47,6 +47,8 @@ For a list of the ecosystems that {% data variables.product.product_name %} can
You can also enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories owned by your user account or organization. For more information, see "[Managing security and analysis settings for your user account](/github/setting-up-and-managing-your-github-user-account/managing-security-and-analysis-settings-for-your-user-account)" or "[Managing security and analysis settings for your organization](/github/setting-up-and-managing-organizations-and-teams/managing-security-and-analysis-settings-for-your-organization)."
For information about permission requirements for actions related to {% data variables.product.prodname_dependabot_alerts %}, see "[Repository permission levels for an organization](/github/setting-up-and-managing-organizations-and-teams/repository-permission-levels-for-an-organization#permission-requirements-for-security-features)."
{% data variables.product.product_name %} starts generating the dependency graph immediately and generates alerts for any vulnerable dependencies as soon as they are identified. The graph is usually populated within minutes but this may take longer for repositories with many dependencies. For more information, see "[Managing data use settings for your private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository)."
{% endif %}

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

@ -1,6 +1,7 @@
---
title: Repository permission levels for an organization
intro: 'You can customize access to each repository in your organization with granular permission levels, giving people access to the features and tasks they need.'
miniTocMaxHeadingLevel: 4
redirect_from:
- /articles/repository-permission-levels-for-an-organization-early-access-program/
- /articles/repository-permission-levels-for-an-organization
@ -42,6 +43,13 @@ In addition to managing organization-level settings, organization owners have ad
{% endwarning %}
### Repository access for each permission level
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
{% note %}
**Note:** Repository permissions required to use security features are listed in "[Permission requirements for security features](#permission-requirements-for-security-features)" below.
{% endnote %}
{% endif %}
| Repository action | Read | Triage | Write | Maintain | Admin |
|:---|:---:|:---:|:---:|:---:|:---:|
@ -104,17 +112,7 @@ In addition to managing organization-level settings, organization owners have ad
| Rename the repository's default branch (see "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)") | | | | | **X** |
| Rename a branch other than the repository's default branch (see "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)") | | | **X** | **X** | **X** |{% endif %}
| Manage webhooks and deploy keys | | | | | **X** |{% if currentVersion == "free-pro-team@latest" %}
| [Enable the dependency graph](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-and-dependents-of-a-repository) for a private repository | | | | | **X** |
| Receive [{% data variables.product.prodname_dependabot_alerts %} for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies) in a repository | | | | | **X** |
| [Dismiss {% data variables.product.prodname_dependabot_alerts %}](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository) | | | | | **X** |
| [Designate additional people or teams to receive {% data variables.product.prodname_dependabot_alerts %}](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts) for vulnerable dependencies | | | | | **X** |
| [Manage data use settings for your private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository) | | | | | **X** |
| Create [security advisories](/github/managing-security-vulnerabilities/about-github-security-advisories) | | | | | **X** |
| Manage access to {% data variables.product.prodname_GH_advanced_security %} features (see "[Managing security and analysis settings for your organization](/github/setting-up-and-managing-organizations-and-teams/managing-security-and-analysis-settings-for-your-organization)") | | | | | **X** |{% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| [View {% data variables.product.prodname_code_scanning %} alerts on pull requests](/github/finding-security-vulnerabilities-and-errors-in-your-code/triaging-code-scanning-alerts-in-pull-requests) | **X** | **X** | **X** | **X** | **X** |
| [List, dismiss, and delete {% data variables.product.prodname_code_scanning %} alerts](/github/finding-security-vulnerabilities-and-errors-in-your-code/managing-code-scanning-alerts-for-your-repository) | | | **X** | **X** | **X** |{% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.22" %}
| [View {% data variables.product.prodname_secret_scanning %} alerts in a repository, and also resolve, revoke or re-open {% data variables.product.prodname_secret_scanning %} alerts](/github/administering-a-repository/managing-alerts-from-secret-scanning) | | | | | **X** |
| [Designate additional people or teams to receive {% data variables.product.prodname_secret_scanning %} alerts](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts) in repositories | | | | | **X** |{% endif %}
| [Manage data use settings for your private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository) | | | | | **X** |{% endif %}
| [Manage the forking policy for a repository](/github/administering-a-repository/managing-the-forking-policy-for-your-repository) | | | | | **X** |
| [Transfer repositories into the organization](/articles/restricting-repository-creation-in-your-organization) | | | | | **X** |
| [Delete or transfer repositories out of the organization](/articles/setting-permissions-for-deleting-or-transferring-repositories) | | | | | **X** |
@ -132,6 +130,27 @@ In addition to managing organization-level settings, organization owners have ad
| [Create new discussions and comment on existing discussions](/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion) | **X** | **X** | **X** | **X** | **X** |
| [Delete a discussion](/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository#deleting-a-discussion) | | | | **X** | **X** |{% endif %}
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
#### Permission requirements for security features
In this section, you can find the repository permission levels required for security features, such as {% data variables.product.prodname_dependabot %} and {% data variables.product.prodname_advanced_security %} features.
| Repository action | Read | Triage | Write | Maintain | Admin |
|:---|:---:|:---:|:---:|:---:|:---:|{% if currentVersion == "free-pro-team@latest" %}
| Receive [{% data variables.product.prodname_dependabot_alerts %} for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies) in a repository | | | | | **X** |
| [Dismiss {% data variables.product.prodname_dependabot_alerts %}](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository) | | | | | **X** |
| [Designate additional people or teams to receive {% data variables.product.prodname_dependabot_alerts %}](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts) for vulnerable dependencies | | | | | **X** |
| Create [security advisories](/github/managing-security-vulnerabilities/about-github-security-advisories) | | | | | **X** |
| Manage access to {% data variables.product.prodname_GH_advanced_security %} features (see "[Managing security and analysis settings for your organization](/github/setting-up-and-managing-organizations-and-teams/managing-security-and-analysis-settings-for-your-organization)") | | | | | **X** |
| [Enable the dependency graph](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-and-dependents-of-a-repository) for a private repository | | | | | **X** |
| [View dependency reviews](/github/collaborating-with-issues-and-pull-requests/reviewing-dependency-changes-in-a-pull-request) | **X** | **X** | **X** | **X** | **X** |{% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.21" %}
| [View {% data variables.product.prodname_code_scanning %} alerts on pull requests](/github/finding-security-vulnerabilities-and-errors-in-your-code/triaging-code-scanning-alerts-in-pull-requests) | **X** | **X** | **X** | **X** | **X** |
| [List, dismiss, and delete {% data variables.product.prodname_code_scanning %} alerts](/github/finding-security-vulnerabilities-and-errors-in-your-code/managing-code-scanning-alerts-for-your-repository) | | | **X** | **X** | **X** |{% endif %}{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@2.22" %}
| [View {% data variables.product.prodname_secret_scanning %} alerts in a repository](/github/administering-a-repository/managing-alerts-from-secret-scanning) | | | | | **X** |
| [Resolve, revoke or re-open {% data variables.product.prodname_secret_scanning %} alerts](/github/administering-a-repository/managing-alerts-from-secret-scanning) | | | | | **X** |
| [Designate additional people or teams to receive {% data variables.product.prodname_secret_scanning %} alerts](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts) in repositories | | | | | **X** |{% endif %}
{% endif %}
### Further reading
- "[Managing access to your organization's repositories](/articles/managing-access-to-your-organization-s-repositories)"

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

@ -1,6 +1,6 @@
---
title: Types of emails GitHub sends
intro: 'There are several types of emails you can receive from {% data variables.product.product_name %}, including notifications, account information, and marketing communications.'
intro: 'There are several types of emails you can receive from {% data variables.product.product_name %}, including notifications, account information, customer research invitations, and marketing communications.'
redirect_from:
- /articles/types-of-emails-github-sends
versions:
@ -25,6 +25,17 @@ You can also choose which type of email updates you'd like to receive on convers
If you've upgraded to paid products or features, then you'll receive billing receipts at the account's primary email address. For more information, see "[Setting your billing email](/articles/setting-your-billing-email)."
### Customer research emails
{% data variables.product.product_name %} occasionally seeks customers to participate in research sessions to help us build a better GitHub. These are conducted remotely, open to customers worldwide, and may include:
- Feedback surveys
- Research interviews
- Usability testing sessions
- Previewing early prototypes or concepts
These emails are infrequent and you can choose whether or not to participate. If you're interested in additional opportunities to participate in research sessions, you may add yourself to the GitHub Customer Research Panel. For more information, see "[GitHub Customer Experience Research](https://cxr.github.com)."
### Marketing emails
{% data variables.product.product_name %} occasionally sends these types of marketing emails:

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

@ -130,6 +130,12 @@ Library name | Repository
**GitHub API Gem**|[peter-murach/github](https://github.com/peter-murach/github)
**Ghee**|[rauhryan/ghee](https://github.com/rauhryan/ghee)
### Rust
Library name | Repository
|---|---|
**Octocrab**|[XAMPPRocky/octocrab](https://github.com/XAMPPRocky/octocrab)
### Scala
Library name | Repository

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

@ -3085,12 +3085,12 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl
committedDate: DateTime!
"""
Check if commited via GitHub web UI.
Check if committed via GitHub web UI.
"""
committedViaWeb: Boolean!
"""
Committership details of the commit.
Committer details of the commit.
"""
committer: GitActor
@ -3955,6 +3955,12 @@ type ContributionCalendarDay {
"""
contributionCount: Int!
"""
Indication of contributions, relative to other days. Can be used to indicate
which color to represent this day on a calendar.
"""
contributionLevel: ContributionLevel!
"""
The day this square represents.
"""
@ -4006,6 +4012,36 @@ type ContributionCalendarWeek {
firstDay: Date!
}
"""
Varying levels of contributions from none to many.
"""
enum ContributionLevel {
"""
Lowest 25% of days of contributions.
"""
FIRST_QUARTILE
"""
Highest 25% of days of contributions. More contributions than the third quartile.
"""
FOURTH_QUARTILE
"""
No contributions occurred.
"""
NONE
"""
Second lowest 25% of days of contributions. More contributions than the first quartile.
"""
SECOND_QUARTILE
"""
Second highest 25% of days of contributions. More contributions than second quartile, less than the fourth quartile.
"""
THIRD_QUARTILE
}
"""
Ordering options for contribution connections.
"""
@ -5387,7 +5423,7 @@ input CreateTeamDiscussionInput {
clientMutationId: String
"""
If true, restricts the visiblity of this discussion to team members and
If true, restricts the visibility of this discussion to team members and
organization admins. If false or not specified, allows any organization member
to view this discussion.
"""
@ -6844,6 +6880,11 @@ enum DeploymentStatusState {
The deployment was successful.
"""
SUCCESS
"""
The deployment is waiting.
"""
WAITING
}
"""
@ -10458,7 +10499,7 @@ enum GitSignatureState {
NO_USER
"""
Valid siganture, though certificate revocation check failed
Valid signature, though certificate revocation check failed
"""
OCSP_ERROR
@ -13512,7 +13553,7 @@ type Milestone implements Closable & Node & UniformResourceLocatable {
number: Int!
"""
Indentifies the percentage complete for the milestone
Identifies the percentage complete for the milestone
"""
progressPercentage: Float!
@ -16982,7 +17023,7 @@ type OrgRestoreMemberAuditEntry implements AuditEntry & Node & OrganizationAudit
restoredCustomEmailRoutingsCount: Int
"""
The number of issue assignemnts for the restored member.
The number of issue assignments for the restored member.
"""
restoredIssueAssignmentsCount: Int
@ -18502,7 +18543,7 @@ type OrganizationIdentityProvider implements Node {
id: ID!
"""
The x509 certificate used by the Identity Provder to sign assertions and responses.
The x509 certificate used by the Identity Provider to sign assertions and responses.
"""
idpCertificate: X509Certificate
@ -19121,7 +19162,7 @@ type PinnedIssueEdge @preview(toggledBy: "elektra-preview") {
}
"""
An ISO-8601 encoded UTC date string with millisecond precison.
An ISO-8601 encoded UTC date string with millisecond precision.
"""
scalar PreciseDateTime
@ -23827,6 +23868,11 @@ type Release implements Node & UniformResourceLocatable {
"""
isDraft: Boolean!
"""
Whether or not the release is the latest releast
"""
isLatest: Boolean!
"""
Whether or not the release is a prerelease
"""
@ -26277,7 +26323,7 @@ type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryD
forkParentName: String
"""
The name of the root repository for this netork.
The name of the root repository for this network.
"""
forkSourceName: String
id: ID!
@ -27305,6 +27351,11 @@ type Repository implements Node & ProjectOwner & RepositoryInfo & Starrable & Su
orderBy: LanguageOrder
): LanguageConnection
"""
Get the latest release for the repository if one exists.
"""
latestRelease: Release
"""
The license associated with the repository
"""
@ -28926,7 +28977,7 @@ type RepositoryVulnerabilityAlert implements Node & RepositoryNode {
dismissReason: String
"""
When was the alert dimissed?
When was the alert dismissed?
"""
dismissedAt: DateTime
@ -28947,7 +28998,7 @@ type RepositoryVulnerabilityAlert implements Node & RepositoryNode {
securityAdvisory: SecurityAdvisory
"""
The associated security vulnerablity
The associated security vulnerability
"""
securityVulnerability: SecurityVulnerability
@ -30065,7 +30116,7 @@ type SmimeSignature implements GitSignature {
}
"""
Entites that can sponsor others via GitHub Sponsors
Entities that can sponsor others via GitHub Sponsors
"""
union Sponsor = Organization | User
@ -35314,7 +35365,7 @@ input UpdateTeamReviewAssignmentInput @preview(toggledBy: "stone-crop-preview")
excludedTeamMemberIds: [ID!] @possibleTypes(concreteTypes: ["User"])
"""
The Node ID of the team to update review assginments of
The Node ID of the team to update review assignments of
"""
id: ID! @possibleTypes(concreteTypes: ["Team"])
@ -36710,6 +36761,72 @@ enum UserStatusOrderField {
UPDATED_AT
}
"""
A domain that can be verified for an organization or an enterprise.
"""
type VerifiableDomain implements Node {
"""
Identifies the primary key from the database.
"""
databaseId: Int
"""
The DNS host name that should be used for verification.
"""
dnsHostName: URI
"""
The unicode encoded domain.
"""
domain: URI!
"""
Whether a TXT record for verification with the expected host name was found.
"""
hasFoundHostName: Boolean!
"""
Whether a TXT record for verification with the expected verification token was found.
"""
hasFoundVerificationToken: Boolean!
id: ID!
"""
Whether this domain is required to exist for an organization policy to be enforced.
"""
isRequiredForPolicyEnforcement: Boolean!
"""
Whether or not the domain is verified.
"""
isVerified: Boolean!
"""
The owner of the domain.
"""
owner: VerifiableDomainOwner!
"""
The punycode encoded domain.
"""
punycodeEncodedDomain: URI!
"""
The time that the current verification token will expire.
"""
tokenExpirationTime: DateTime
"""
The current verification token for the domain.
"""
verificationToken: String
}
"""
Types that can own a verifiable domain.
"""
union VerifiableDomainOwner = Enterprise | Organization
"""
A hovercard context with a message describing how the viewer is related.
"""

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

@ -648,6 +648,41 @@ type AddStarPayload {
starrable: Starrable
}
"""
Autogenerated input type of AddVerifiableDomain
"""
input AddVerifiableDomainInput {
"""
A unique identifier for the client performing the mutation.
"""
clientMutationId: String
"""
The URL of the domain
"""
domain: URI!
"""
The ID of the owner to add the domain to
"""
ownerId: ID! @possibleTypes(concreteTypes: ["Enterprise", "Organization"], abstractType: "VerifiableDomainOwner")
}
"""
Autogenerated return type of AddVerifiableDomain
"""
type AddVerifiableDomainPayload {
"""
A unique identifier for the client performing the mutation.
"""
clientMutationId: String
"""
The verifiable domain that was added.
"""
domain: VerifiableDomain
}
"""
Represents a 'added_to_project' event on a given issue or pull request.
"""
@ -3175,12 +3210,12 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl
committedDate: DateTime!
"""
Check if commited via GitHub web UI.
Check if committed via GitHub web UI.
"""
committedViaWeb: Boolean!
"""
Committership details of the commit.
Committer details of the commit.
"""
committer: GitActor
@ -4045,6 +4080,12 @@ type ContributionCalendarDay {
"""
contributionCount: Int!
"""
Indication of contributions, relative to other days. Can be used to indicate
which color to represent this day on a calendar.
"""
contributionLevel: ContributionLevel!
"""
The day this square represents.
"""
@ -4096,6 +4137,36 @@ type ContributionCalendarWeek {
firstDay: Date!
}
"""
Varying levels of contributions from none to many.
"""
enum ContributionLevel {
"""
Lowest 25% of days of contributions.
"""
FIRST_QUARTILE
"""
Highest 25% of days of contributions. More contributions than the third quartile.
"""
FOURTH_QUARTILE
"""
No contributions occurred.
"""
NONE
"""
Second lowest 25% of days of contributions. More contributions than the first quartile.
"""
SECOND_QUARTILE
"""
Second highest 25% of days of contributions. More contributions than second quartile, less than the fourth quartile.
"""
THIRD_QUARTILE
}
"""
Ordering options for contribution connections.
"""
@ -5532,7 +5603,7 @@ input CreateTeamDiscussionInput {
clientMutationId: String
"""
If true, restricts the visiblity of this discussion to team members and
If true, restricts the visibility of this discussion to team members and
organization admins. If false or not specified, allows any organization member
to view this discussion.
"""
@ -6540,6 +6611,36 @@ type DeleteTeamDiscussionPayload {
clientMutationId: String
}
"""
Autogenerated input type of DeleteVerifiableDomain
"""
input DeleteVerifiableDomainInput {
"""
A unique identifier for the client performing the mutation.
"""
clientMutationId: String
"""
The ID of the verifiable domain to delete.
"""
id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"])
}
"""
Autogenerated return type of DeleteVerifiableDomain
"""
type DeleteVerifiableDomainPayload {
"""
A unique identifier for the client performing the mutation.
"""
clientMutationId: String
"""
The owning account from which the domain was deleted.
"""
owner: VerifiableDomainOwner
}
"""
Represents a 'demilestoned' event on a given issue or pull request.
"""
@ -7230,6 +7331,11 @@ enum DeploymentStatusState {
The deployment was successful.
"""
SUCCESS
"""
The deployment is waiting.
"""
WAITING
}
"""
@ -8335,6 +8441,41 @@ type EnterpriseOwnerInfo {
value: DefaultRepositoryPermissionField!
): OrganizationConnection!
"""
A list of domains owned by the enterprise.
"""
domains(
"""
Returns the elements in the list that come after the specified cursor.
"""
after: String
"""
Returns the elements in the list that come before the specified cursor.
"""
before: String
"""
Returns the first _n_ elements from the list.
"""
first: Int
"""
Filter whether or not the domain is verified.
"""
isVerified: Boolean
"""
Returns the last _n_ elements from the list.
"""
last: Int
"""
Ordering options for verifiable domains returned.
"""
orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC}
): VerifiableDomainConnection!
"""
Enterprise Server installations owned by the enterprise.
"""
@ -11074,7 +11215,7 @@ enum GitSignatureState {
NO_USER
"""
Valid siganture, though certificate revocation check failed
Valid signature, though certificate revocation check failed
"""
OCSP_ERROR
@ -14557,7 +14698,7 @@ type Milestone implements Closable & Node & UniformResourceLocatable {
number: Int!
"""
Indentifies the percentage complete for the milestone
Identifies the percentage complete for the milestone
"""
progressPercentage: Float!
@ -15008,6 +15149,11 @@ type Mutation {
"""
addStar(input: AddStarInput!): AddStarPayload
"""
Adds a verifiable domain to an owning account.
"""
addVerifiableDomain(input: AddVerifiableDomainInput!): AddVerifiableDomainPayload
"""
Marks a repository as archived.
"""
@ -15213,6 +15359,11 @@ type Mutation {
"""
deleteTeamDiscussionComment(input: DeleteTeamDiscussionCommentInput!): DeleteTeamDiscussionCommentPayload
"""
Deletes a verifiable domain.
"""
deleteVerifiableDomain(input: DeleteVerifiableDomainInput!): DeleteVerifiableDomainPayload
"""
Dismisses an approved or rejected pull request review.
"""
@ -15288,6 +15439,11 @@ type Mutation {
"""
regenerateEnterpriseIdentityProviderRecoveryCodes(input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput!): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload
"""
Regenerates a verifiable domain's verification token.
"""
regenerateVerifiableDomainToken(input: RegenerateVerifiableDomainTokenInput!): RegenerateVerifiableDomainTokenPayload
"""
Removes assignees from an assignable object.
"""
@ -15639,6 +15795,11 @@ type Mutation {
Replaces the repository's topics with the given topics.
"""
updateTopics(input: UpdateTopicsInput!): UpdateTopicsPayload
"""
Verify that a verifiable domain has the expected DNS record.
"""
verifyVerifiableDomain(input: VerifyVerifiableDomainInput!): VerifyVerifiableDomainPayload
}
"""
@ -18107,7 +18268,7 @@ type OrgRestoreMemberAuditEntry implements AuditEntry & Node & OrganizationAudit
restoredCustomEmailRoutingsCount: Int
"""
The number of issue assignemnts for the restored member.
The number of issue assignments for the restored member.
"""
restoredIssueAssignmentsCount: Int
@ -18911,6 +19072,41 @@ type Organization implements Actor & MemberStatusable & Node & PackageOwner & Pr
"""
descriptionHTML: String
"""
A list of domains owned by the organization.
"""
domains(
"""
Returns the elements in the list that come after the specified cursor.
"""
after: String
"""
Returns the elements in the list that come before the specified cursor.
"""
before: String
"""
Returns the first _n_ elements from the list.
"""
first: Int
"""
Filter by if the domain is verified.
"""
isVerified: Boolean
"""
Returns the last _n_ elements from the list.
"""
last: Int
"""
Ordering options for verifiable domains returned.
"""
orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC}
): VerifiableDomainConnection
"""
The organization's public email.
"""
@ -19702,7 +19898,7 @@ type OrganizationIdentityProvider implements Node {
id: ID!
"""
The x509 certificate used by the Identity Provder to sign assertions and responses.
The x509 certificate used by the Identity Provider to sign assertions and responses.
"""
idpCertificate: X509Certificate
@ -20840,7 +21036,7 @@ type PinnedIssueEdge @preview(toggledBy: "elektra-preview") {
}
"""
An ISO-8601 encoded UTC date string with millisecond precison.
An ISO-8601 encoded UTC date string with millisecond precision.
"""
scalar PreciseDateTime
@ -25668,6 +25864,36 @@ type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload {
identityProvider: EnterpriseIdentityProvider
}
"""
Autogenerated input type of RegenerateVerifiableDomainToken
"""
input RegenerateVerifiableDomainTokenInput {
"""
A unique identifier for the client performing the mutation.
"""
clientMutationId: String
"""
The ID of the verifiable domain to regenerate the verification token of.
"""
id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"])
}
"""
Autogenerated return type of RegenerateVerifiableDomainToken
"""
type RegenerateVerifiableDomainTokenPayload {
"""
A unique identifier for the client performing the mutation.
"""
clientMutationId: String
"""
The verification token that was generated.
"""
verificationToken: String
}
"""
A release contains the content for a release.
"""
@ -25698,6 +25924,11 @@ type Release implements Node & UniformResourceLocatable {
"""
isDraft: Boolean!
"""
Whether or not the release is the latest releast
"""
isLatest: Boolean!
"""
Whether or not the release is a prerelease
"""
@ -28258,7 +28489,7 @@ type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryD
forkParentName: String
"""
The name of the root repository for this netork.
The name of the root repository for this network.
"""
forkSourceName: String
id: ID!
@ -29341,6 +29572,11 @@ type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo &
orderBy: LanguageOrder
): LanguageConnection
"""
Get the latest release for the repository if one exists.
"""
latestRelease: Release
"""
The license associated with the repository
"""
@ -31097,7 +31333,7 @@ type RepositoryVulnerabilityAlert implements Node & RepositoryNode {
dismissReason: String
"""
When was the alert dimissed?
When was the alert dismissed?
"""
dismissedAt: DateTime
@ -31118,7 +31354,7 @@ type RepositoryVulnerabilityAlert implements Node & RepositoryNode {
securityAdvisory: SecurityAdvisory
"""
The associated security vulnerablity
The associated security vulnerability
"""
securityVulnerability: SecurityVulnerability
@ -32501,7 +32737,7 @@ type SmimeSignature implements GitSignature {
}
"""
Entites that can sponsor others via GitHub Sponsors
Entities that can sponsor others via GitHub Sponsors
"""
union Sponsor = Organization | User
@ -38088,7 +38324,7 @@ input UpdateTeamReviewAssignmentInput @preview(toggledBy: "stone-crop-preview")
excludedTeamMemberIds: [ID!] @possibleTypes(concreteTypes: ["User"])
"""
The Node ID of the team to update review assginments of
The Node ID of the team to update review assignments of
"""
id: ID! @possibleTypes(concreteTypes: ["Team"])
@ -39554,6 +39790,167 @@ enum UserStatusOrderField {
UPDATED_AT
}
"""
A domain that can be verified for an organization or an enterprise.
"""
type VerifiableDomain implements Node {
"""
Identifies the primary key from the database.
"""
databaseId: Int
"""
The DNS host name that should be used for verification.
"""
dnsHostName: URI
"""
The unicode encoded domain.
"""
domain: URI!
"""
Whether a TXT record for verification with the expected host name was found.
"""
hasFoundHostName: Boolean!
"""
Whether a TXT record for verification with the expected verification token was found.
"""
hasFoundVerificationToken: Boolean!
id: ID!
"""
Whether this domain is required to exist for an organization policy to be enforced.
"""
isRequiredForPolicyEnforcement: Boolean!
"""
Whether or not the domain is verified.
"""
isVerified: Boolean!
"""
The owner of the domain.
"""
owner: VerifiableDomainOwner!
"""
The punycode encoded domain.
"""
punycodeEncodedDomain: URI!
"""
The time that the current verification token will expire.
"""
tokenExpirationTime: DateTime
"""
The current verification token for the domain.
"""
verificationToken: String
}
"""
The connection type for VerifiableDomain.
"""
type VerifiableDomainConnection {
"""
A list of edges.
"""
edges: [VerifiableDomainEdge]
"""
A list of nodes.
"""
nodes: [VerifiableDomain]
"""
Information to aid in pagination.
"""
pageInfo: PageInfo!
"""
Identifies the total count of items in the connection.
"""
totalCount: Int!
}
"""
An edge in a connection.
"""
type VerifiableDomainEdge {
"""
A cursor for use in pagination.
"""
cursor: String!
"""
The item at the end of the edge.
"""
node: VerifiableDomain
}
"""
Ordering options for verifiable domain connections.
"""
input VerifiableDomainOrder {
"""
The ordering direction.
"""
direction: OrderDirection!
"""
The field to order verifiable domains by.
"""
field: VerifiableDomainOrderField!
}
"""
Properties by which verifiable domain connections can be ordered.
"""
enum VerifiableDomainOrderField {
"""
Order verifiable domains by the domain name.
"""
DOMAIN
}
"""
Types that can own a verifiable domain.
"""
union VerifiableDomainOwner = Enterprise | Organization
"""
Autogenerated input type of VerifyVerifiableDomain
"""
input VerifyVerifiableDomainInput {
"""
A unique identifier for the client performing the mutation.
"""
clientMutationId: String
"""
The ID of the verifiable domain to verify.
"""
id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"])
}
"""
Autogenerated return type of VerifyVerifiableDomain
"""
type VerifyVerifiableDomainPayload {
"""
A unique identifier for the client performing the mutation.
"""
clientMutationId: String
"""
The verifiable domain that was verified.
"""
domain: VerifiableDomain
}
"""
A hovercard context with a message describing how the viewer is related.
"""

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

@ -0,0 +1,5 @@
{% note %}
**Note:** SARIF upload supports a maximum of 1000 results per upload. Any results over this limit are ignored. If a tool generates too many results, you should update the configuration to focus on results for the most important rules or queries.
{% endnote %}

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

@ -1 +1 @@
1. To import the archived migration data to a {% data variables.product.prodname_ghe_server %} instance, see "[Importing migration data to {% data variables.product.prodname_ghe_server %}](/enterprise/admin/guides/migrations/importing-migration-data-to-github-enterprise-server/)".
1. To prepare the archived migration data for import into a {% data variables.product.prodname_ghe_server %} instance, see "[Preparing to migrate data to your enterprise](/enterprise/admin/user-management/preparing-to-migrate-data-to-your-enterprise)".

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

@ -1,4 +1,41 @@
[
{
"schemaChanges": [
{
"title": "The GraphQL schema includes these changes:",
"changes": [
"Type `ContributionLevel` was added",
"Type `VerifiableDomainOrder` was added",
"Type `VerifiableDomainOrderField` was added",
"Type `VerifiableDomainConnection` was added",
"Type `VerifiableDomainEdge` was added",
"Type `VerifiableDomain` was added",
"Type `VerifiableDomainOwner` was added",
"Type `AddVerifiableDomainInput` was added",
"Type `AddVerifiableDomainPayload` was added",
"Type `DeleteVerifiableDomainInput` was added",
"Type `DeleteVerifiableDomainPayload` was added",
"Type `RegenerateVerifiableDomainTokenInput` was added",
"Type `RegenerateVerifiableDomainTokenPayload` was added",
"Type `VerifyVerifiableDomainInput` was added",
"Type `VerifyVerifiableDomainPayload` was added",
"Field `domains` was added to object type `Organization`",
"Field `isLatest` was added to object type `Release`",
"Field `latestRelease` was added to object type `Repository`",
"Enum value `WAITING` was added to enum `DeploymentStatusState`",
"Field `contributionLevel` was added to object type `ContributionCalendarDay`",
"Field `domains` was added to object type `EnterpriseOwnerInfo`",
"Field `addVerifiableDomain` was added to object type `Mutation`",
"Field `deleteVerifiableDomain` was added to object type `Mutation`",
"Field `regenerateVerifiableDomainToken` was added to object type `Mutation`",
"Field `verifyVerifiableDomain` was added to object type `Mutation`"
]
}
],
"previewChanges": [],
"upcomingChanges": [],
"date": "2021-01-19"
},
{
"schemaChanges": [
{

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

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

@ -1280,6 +1280,40 @@
}
]
},
{
"name": "addVerifiableDomain",
"kind": "mutations",
"id": "addverifiabledomain",
"href": "/graphql/reference/mutations#addverifiabledomain",
"description": "<p>Adds a verifiable domain to an owning account.</p>",
"inputFields": [
{
"name": "input",
"type": "AddVerifiableDomainInput!",
"id": "addverifiabledomaininput",
"kind": "input-objects",
"href": "/graphql/reference/input-objects#addverifiabledomaininput"
}
],
"returnFields": [
{
"name": "clientMutationId",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string",
"description": "<p>A unique identifier for the client performing the mutation.</p>"
},
{
"name": "domain",
"type": "VerifiableDomain",
"id": "verifiabledomain",
"kind": "objects",
"href": "/graphql/reference/objects#verifiabledomain",
"description": "<p>The verifiable domain that was added.</p>"
}
]
},
{
"name": "archiveRepository",
"kind": "mutations",
@ -2758,6 +2792,40 @@
}
]
},
{
"name": "deleteVerifiableDomain",
"kind": "mutations",
"id": "deleteverifiabledomain",
"href": "/graphql/reference/mutations#deleteverifiabledomain",
"description": "<p>Deletes a verifiable domain.</p>",
"inputFields": [
{
"name": "input",
"type": "DeleteVerifiableDomainInput!",
"id": "deleteverifiabledomaininput",
"kind": "input-objects",
"href": "/graphql/reference/input-objects#deleteverifiabledomaininput"
}
],
"returnFields": [
{
"name": "clientMutationId",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string",
"description": "<p>A unique identifier for the client performing the mutation.</p>"
},
{
"name": "owner",
"type": "VerifiableDomainOwner",
"id": "verifiabledomainowner",
"kind": "unions",
"href": "/graphql/reference/unions#verifiabledomainowner",
"description": "<p>The owning account from which the domain was deleted.</p>"
}
]
},
{
"name": "dismissPullRequestReview",
"kind": "mutations",
@ -3325,6 +3393,40 @@
}
]
},
{
"name": "regenerateVerifiableDomainToken",
"kind": "mutations",
"id": "regenerateverifiabledomaintoken",
"href": "/graphql/reference/mutations#regenerateverifiabledomaintoken",
"description": "<p>Regenerates a verifiable domain's verification token.</p>",
"inputFields": [
{
"name": "input",
"type": "RegenerateVerifiableDomainTokenInput!",
"id": "regenerateverifiabledomaintokeninput",
"kind": "input-objects",
"href": "/graphql/reference/input-objects#regenerateverifiabledomaintokeninput"
}
],
"returnFields": [
{
"name": "clientMutationId",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string",
"description": "<p>A unique identifier for the client performing the mutation.</p>"
},
{
"name": "verificationToken",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string",
"description": "<p>The verification token that was generated.</p>"
}
]
},
{
"name": "removeAssigneesFromAssignable",
"kind": "mutations",
@ -5880,6 +5982,40 @@
"description": "<p>The updated repository.</p>"
}
]
},
{
"name": "verifyVerifiableDomain",
"kind": "mutations",
"id": "verifyverifiabledomain",
"href": "/graphql/reference/mutations#verifyverifiabledomain",
"description": "<p>Verify that a verifiable domain has the expected DNS record.</p>",
"inputFields": [
{
"name": "input",
"type": "VerifyVerifiableDomainInput!",
"id": "verifyverifiabledomaininput",
"kind": "input-objects",
"href": "/graphql/reference/input-objects#verifyverifiabledomaininput"
}
],
"returnFields": [
{
"name": "clientMutationId",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string",
"description": "<p>A unique identifier for the client performing the mutation.</p>"
},
{
"name": "domain",
"type": "VerifiableDomain",
"id": "verifiabledomain",
"kind": "objects",
"href": "/graphql/reference/objects#verifiabledomain",
"description": "<p>The verifiable domain that was verified.</p>"
}
]
}
],
"objects": [
@ -8813,7 +8949,7 @@
},
{
"name": "committedViaWeb",
"description": "<p>Check if commited via GitHub web UI.</p>",
"description": "<p>Check if committed via GitHub web UI.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
@ -8821,7 +8957,7 @@
},
{
"name": "committer",
"description": "<p>Committership details of the commit.</p>",
"description": "<p>Committer details of the commit.</p>",
"type": "GitActor",
"id": "gitactor",
"kind": "objects",
@ -10243,6 +10379,14 @@
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
},
{
"name": "contributionLevel",
"description": "<p>Indication of contributions, relative to other days. Can be used to indicate\nwhich color to represent this day on a calendar.</p>",
"type": "ContributionLevel!",
"id": "contributionlevel",
"kind": "enums",
"href": "/graphql/reference/enums#contributionlevel"
},
{
"name": "date",
"description": "<p>The day this square represents.</p>",
@ -14646,6 +14790,76 @@
}
]
},
{
"name": "domains",
"description": "<p>A list of domains owned by the enterprise.</p>",
"type": "VerifiableDomainConnection!",
"id": "verifiabledomainconnection",
"kind": "objects",
"href": "/graphql/reference/objects#verifiabledomainconnection",
"arguments": [
{
"name": "after",
"description": "<p>Returns the elements in the list that come after the specified cursor.</p>",
"type": {
"name": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
}
},
{
"name": "before",
"description": "<p>Returns the elements in the list that come before the specified cursor.</p>",
"type": {
"name": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
}
},
{
"name": "first",
"description": "<p>Returns the first <em>n</em> elements from the list.</p>",
"type": {
"name": "Int",
"id": "int",
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
}
},
{
"name": "isVerified",
"description": "<p>Filter whether or not the domain is verified.</p>",
"type": {
"name": "Boolean",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
}
},
{
"name": "last",
"description": "<p>Returns the last <em>n</em> elements from the list.</p>",
"type": {
"name": "Int",
"id": "int",
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
}
},
{
"name": "orderBy",
"description": "<p>Ordering options for verifiable domains returned.</p>",
"type": {
"name": "VerifiableDomainOrder",
"id": "verifiabledomainorder",
"kind": "input-objects",
"href": "/graphql/reference/input-objects#verifiabledomainorder"
}
}
]
},
{
"name": "enterpriseServerInstallations",
"description": "<p>Enterprise Server installations owned by the enterprise.</p>",
@ -23322,7 +23536,7 @@
},
{
"name": "progressPercentage",
"description": "<p>Indentifies the percentage complete for the milestone.</p>",
"description": "<p>Identifies the percentage complete for the milestone.</p>",
"type": "Float!",
"id": "float",
"kind": "scalars",
@ -27657,7 +27871,7 @@
},
{
"name": "restoredIssueAssignmentsCount",
"description": "<p>The number of issue assignemnts for the restored member.</p>",
"description": "<p>The number of issue assignments for the restored member.</p>",
"type": "Int",
"id": "int",
"kind": "scalars",
@ -28975,6 +29189,76 @@
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
},
{
"name": "domains",
"description": "<p>A list of domains owned by the organization.</p>",
"type": "VerifiableDomainConnection",
"id": "verifiabledomainconnection",
"kind": "objects",
"href": "/graphql/reference/objects#verifiabledomainconnection",
"arguments": [
{
"name": "after",
"description": "<p>Returns the elements in the list that come after the specified cursor.</p>",
"type": {
"name": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
}
},
{
"name": "before",
"description": "<p>Returns the elements in the list that come before the specified cursor.</p>",
"type": {
"name": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
}
},
{
"name": "first",
"description": "<p>Returns the first <em>n</em> elements from the list.</p>",
"type": {
"name": "Int",
"id": "int",
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
}
},
{
"name": "isVerified",
"description": "<p>Filter by if the domain is verified.</p>",
"type": {
"name": "Boolean",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
}
},
{
"name": "last",
"description": "<p>Returns the last <em>n</em> elements from the list.</p>",
"type": {
"name": "Int",
"id": "int",
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
}
},
{
"name": "orderBy",
"description": "<p>Ordering options for verifiable domains returned.</p>",
"type": {
"name": "VerifiableDomainOrder",
"id": "verifiabledomainorder",
"kind": "input-objects",
"href": "/graphql/reference/input-objects#verifiabledomainorder"
}
}
]
},
{
"name": "email",
"description": "<p>The organization's public email.</p>",
@ -30387,7 +30671,7 @@
},
{
"name": "idpCertificate",
"description": "<p>The x509 certificate used by the Identity Provder to sign assertions and responses.</p>",
"description": "<p>The x509 certificate used by the Identity Provider to sign assertions and responses.</p>",
"type": "X509Certificate",
"id": "x509certificate",
"kind": "scalars",
@ -37933,6 +38217,14 @@
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "isLatest",
"description": "<p>Whether or not the release is the latest releast.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "isPrerelease",
"description": "<p>Whether or not the release is a prerelease.</p>",
@ -41659,7 +41951,7 @@
},
{
"name": "forkSourceName",
"description": "<p>The name of the root repository for this netork.</p>",
"description": "<p>The name of the root repository for this network.</p>",
"type": "String",
"id": "string",
"kind": "scalars",
@ -43520,6 +43812,14 @@
}
]
},
{
"name": "latestRelease",
"description": "<p>Get the latest release for the repository if one exists.</p>",
"type": "Release",
"id": "release",
"kind": "objects",
"href": "/graphql/reference/objects#release"
},
{
"name": "licenseInfo",
"description": "<p>The license associated with the repository.</p>",
@ -45708,7 +46008,7 @@
},
{
"name": "dismissedAt",
"description": "<p>When was the alert dimissed?.</p>",
"description": "<p>When was the alert dismissed?.</p>",
"type": "DateTime",
"id": "datetime",
"kind": "scalars",
@ -45740,7 +46040,7 @@
},
{
"name": "securityVulnerability",
"description": "<p>The associated security vulnerablity.</p>",
"description": "<p>The associated security vulnerability.</p>",
"type": "SecurityVulnerability",
"id": "securityvulnerability",
"kind": "objects",
@ -54932,6 +55232,176 @@
}
]
},
{
"name": "VerifiableDomain",
"kind": "objects",
"id": "verifiabledomain",
"href": "/graphql/reference/objects#verifiabledomain",
"description": "<p>A domain that can be verified for an organization or an enterprise.</p>",
"implements": [
{
"name": "Node",
"id": "node",
"href": "/graphql/reference/interfaces#node"
}
],
"fields": [
{
"name": "databaseId",
"description": "<p>Identifies the primary key from the database.</p>",
"type": "Int",
"id": "int",
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
},
{
"name": "dnsHostName",
"description": "<p>The DNS host name that should be used for verification.</p>",
"type": "URI",
"id": "uri",
"kind": "scalars",
"href": "/graphql/reference/scalars#uri"
},
{
"name": "domain",
"description": "<p>The unicode encoded domain.</p>",
"type": "URI!",
"id": "uri",
"kind": "scalars",
"href": "/graphql/reference/scalars#uri"
},
{
"name": "hasFoundHostName",
"description": "<p>Whether a TXT record for verification with the expected host name was found.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "hasFoundVerificationToken",
"description": "<p>Whether a TXT record for verification with the expected verification token was found.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "isRequiredForPolicyEnforcement",
"description": "<p>Whether this domain is required to exist for an organization policy to be enforced.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "isVerified",
"description": "<p>Whether or not the domain is verified.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "owner",
"description": "<p>The owner of the domain.</p>",
"type": "VerifiableDomainOwner!",
"id": "verifiabledomainowner",
"kind": "unions",
"href": "/graphql/reference/unions#verifiabledomainowner"
},
{
"name": "punycodeEncodedDomain",
"description": "<p>The punycode encoded domain.</p>",
"type": "URI!",
"id": "uri",
"kind": "scalars",
"href": "/graphql/reference/scalars#uri"
},
{
"name": "tokenExpirationTime",
"description": "<p>The time that the current verification token will expire.</p>",
"type": "DateTime",
"id": "datetime",
"kind": "scalars",
"href": "/graphql/reference/scalars#datetime"
},
{
"name": "verificationToken",
"description": "<p>The current verification token for the domain.</p>",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
}
]
},
{
"name": "VerifiableDomainConnection",
"kind": "objects",
"id": "verifiabledomainconnection",
"href": "/graphql/reference/objects#verifiabledomainconnection",
"description": "<p>The connection type for VerifiableDomain.</p>",
"fields": [
{
"name": "edges",
"description": "<p>A list of edges.</p>",
"type": "[VerifiableDomainEdge]",
"id": "verifiabledomainedge",
"kind": "objects",
"href": "/graphql/reference/objects#verifiabledomainedge"
},
{
"name": "nodes",
"description": "<p>A list of nodes.</p>",
"type": "[VerifiableDomain]",
"id": "verifiabledomain",
"kind": "objects",
"href": "/graphql/reference/objects#verifiabledomain"
},
{
"name": "pageInfo",
"description": "<p>Information to aid in pagination.</p>",
"type": "PageInfo!",
"id": "pageinfo",
"kind": "objects",
"href": "/graphql/reference/objects#pageinfo"
},
{
"name": "totalCount",
"description": "<p>Identifies the total count of items in the connection.</p>",
"type": "Int!",
"id": "int",
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
}
]
},
{
"name": "VerifiableDomainEdge",
"kind": "objects",
"id": "verifiabledomainedge",
"href": "/graphql/reference/objects#verifiabledomainedge",
"description": "<p>An edge in a connection.</p>",
"fields": [
{
"name": "cursor",
"description": "<p>A cursor for use in pagination.</p>",
"type": "String!",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
},
{
"name": "node",
"description": "<p>The item at the end of the edge.</p>",
"type": "VerifiableDomain",
"id": "verifiabledomain",
"kind": "objects",
"href": "/graphql/reference/objects#verifiabledomain"
}
]
},
{
"name": "ViewerHovercardContext",
"kind": "objects",
@ -57605,6 +58075,35 @@
}
]
},
{
"name": "ContributionLevel",
"kind": "enums",
"id": "contributionlevel",
"href": "/graphql/reference/enums#contributionlevel",
"description": "<p>Varying levels of contributions from none to many.</p>",
"values": [
{
"name": "FIRST_QUARTILE",
"description": "<p>Lowest 25% of days of contributions.</p>"
},
{
"name": "FOURTH_QUARTILE",
"description": "<p>Highest 25% of days of contributions. More contributions than the third quartile.</p>"
},
{
"name": "NONE",
"description": "<p>No contributions occurred.</p>"
},
{
"name": "SECOND_QUARTILE",
"description": "<p>Second lowest 25% of days of contributions. More contributions than the first quartile.</p>"
},
{
"name": "THIRD_QUARTILE",
"description": "<p>Second highest 25% of days of contributions. More contributions than second quartile, less than the fourth quartile.</p>"
}
]
},
{
"name": "DefaultRepositoryPermissionField",
"kind": "enums",
@ -57726,6 +58225,10 @@
{
"name": "SUCCESS",
"description": "<p>The deployment was successful.</p>"
},
{
"name": "WAITING",
"description": "<p>The deployment is waiting.</p>"
}
]
},
@ -58182,7 +58685,7 @@
},
{
"name": "OCSP_ERROR",
"description": "<p>Valid siganture, though certificate revocation check failed.</p>"
"description": "<p>Valid signature, though certificate revocation check failed.</p>"
},
{
"name": "OCSP_PENDING",
@ -60780,6 +61283,19 @@
"description": "<p>Order user statuses by when they were updated.</p>"
}
]
},
{
"name": "VerifiableDomainOrderField",
"kind": "enums",
"id": "verifiabledomainorderfield",
"href": "/graphql/reference/enums#verifiabledomainorderfield",
"description": "<p>Properties by which verifiable domain connections can be ordered.</p>",
"values": [
{
"name": "DOMAIN",
"description": "<p>Order verifiable domains by the domain name.</p>"
}
]
}
],
"unions": [
@ -62248,7 +62764,7 @@
"kind": "unions",
"id": "sponsor",
"href": "/graphql/reference/unions#sponsor",
"description": "<p>Entites that can sponsor others via GitHub Sponsors.</p>",
"description": "<p>Entities that can sponsor others via GitHub Sponsors.</p>",
"possibleTypes": [
{
"name": "Organization",
@ -62280,6 +62796,25 @@
"href": "/graphql/reference/objects#statuscontext"
}
]
},
{
"name": "VerifiableDomainOwner",
"kind": "unions",
"id": "verifiabledomainowner",
"href": "/graphql/reference/unions#verifiabledomainowner",
"description": "<p>Types that can own a verifiable domain.</p>",
"possibleTypes": [
{
"name": "Enterprise",
"id": "enterprise",
"href": "/graphql/reference/objects#enterprise"
},
{
"name": "Organization",
"id": "organization",
"href": "/graphql/reference/objects#organization"
}
]
}
],
"inputObjects": [
@ -62843,6 +63378,40 @@
}
]
},
{
"name": "AddVerifiableDomainInput",
"kind": "inputObjects",
"id": "addverifiabledomaininput",
"href": "/graphql/reference/input-objects#addverifiabledomaininput",
"description": "<p>Autogenerated input type of AddVerifiableDomain.</p>",
"inputFields": [
{
"name": "clientMutationId",
"description": "<p>A unique identifier for the client performing the mutation.</p>",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
},
{
"name": "domain",
"description": "<p>The URL of the domain.</p>",
"type": "URI!",
"id": "uri",
"kind": "scalars",
"href": "/graphql/reference/scalars#uri"
},
{
"name": "ownerId",
"description": "<p>The ID of the owner to add the domain to.</p>",
"type": "ID!",
"id": "id",
"kind": "scalars",
"href": "/graphql/reference/scalars#id",
"isDeprecated": false
}
]
},
{
"name": "ArchiveRepositoryInput",
"kind": "inputObjects",
@ -64730,7 +65299,7 @@
},
{
"name": "private",
"description": "<p>If true, restricts the visiblity of this discussion to team members and\norganization admins. If false or not specified, allows any organization member\nto view this discussion.</p>",
"description": "<p>If true, restricts the visibility of this discussion to team members and\norganization admins. If false or not specified, allows any organization member\nto view this discussion.</p>",
"type": "Boolean",
"id": "boolean",
"kind": "scalars",
@ -65203,6 +65772,32 @@
}
]
},
{
"name": "DeleteVerifiableDomainInput",
"kind": "inputObjects",
"id": "deleteverifiabledomaininput",
"href": "/graphql/reference/input-objects#deleteverifiabledomaininput",
"description": "<p>Autogenerated input type of DeleteVerifiableDomain.</p>",
"inputFields": [
{
"name": "clientMutationId",
"description": "<p>A unique identifier for the client performing the mutation.</p>",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
},
{
"name": "id",
"description": "<p>The ID of the verifiable domain to delete.</p>",
"type": "ID!",
"id": "id",
"kind": "scalars",
"href": "/graphql/reference/scalars#id",
"isDeprecated": false
}
]
},
{
"name": "DeploymentOrder",
"kind": "inputObjects",
@ -66616,6 +67211,32 @@
}
]
},
{
"name": "RegenerateVerifiableDomainTokenInput",
"kind": "inputObjects",
"id": "regenerateverifiabledomaintokeninput",
"href": "/graphql/reference/input-objects#regenerateverifiabledomaintokeninput",
"description": "<p>Autogenerated input type of RegenerateVerifiableDomainToken.</p>",
"inputFields": [
{
"name": "clientMutationId",
"description": "<p>A unique identifier for the client performing the mutation.</p>",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
},
{
"name": "id",
"description": "<p>The ID of the verifiable domain to regenerate the verification token of.</p>",
"type": "ID!",
"id": "id",
"kind": "scalars",
"href": "/graphql/reference/scalars#id",
"isDeprecated": false
}
]
},
{
"name": "ReleaseOrder",
"kind": "inputObjects",
@ -69840,7 +70461,7 @@
},
{
"name": "id",
"description": "<p>The Node ID of the team to update review assginments of.</p>",
"description": "<p>The Node ID of the team to update review assignments of.</p>",
"type": "ID!",
"id": "id",
"kind": "scalars",
@ -69923,6 +70544,57 @@
"href": "/graphql/reference/enums#userstatusorderfield"
}
]
},
{
"name": "VerifiableDomainOrder",
"kind": "inputObjects",
"id": "verifiabledomainorder",
"href": "/graphql/reference/input-objects#verifiabledomainorder",
"description": "<p>Ordering options for verifiable domain connections.</p>",
"inputFields": [
{
"name": "direction",
"description": "<p>The ordering direction.</p>",
"type": "OrderDirection!",
"id": "orderdirection",
"kind": "enums",
"href": "/graphql/reference/enums#orderdirection"
},
{
"name": "field",
"description": "<p>The field to order verifiable domains by.</p>",
"type": "VerifiableDomainOrderField!",
"id": "verifiabledomainorderfield",
"kind": "enums",
"href": "/graphql/reference/enums#verifiabledomainorderfield"
}
]
},
{
"name": "VerifyVerifiableDomainInput",
"kind": "inputObjects",
"id": "verifyverifiabledomaininput",
"href": "/graphql/reference/input-objects#verifyverifiabledomaininput",
"description": "<p>Autogenerated input type of VerifyVerifiableDomain.</p>",
"inputFields": [
{
"name": "clientMutationId",
"description": "<p>A unique identifier for the client performing the mutation.</p>",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
},
{
"name": "id",
"description": "<p>The ID of the verifiable domain to verify.</p>",
"type": "ID!",
"id": "id",
"kind": "scalars",
"href": "/graphql/reference/scalars#id",
"isDeprecated": false
}
]
}
],
"scalars": [
@ -70020,7 +70692,7 @@
"kind": "scalars",
"id": "precisedatetime",
"href": "/graphql/reference/scalars#precisedatetime",
"description": "<p>An ISO-8601 encoded UTC date string with millisecond precison.</p>"
"description": "<p>An ISO-8601 encoded UTC date string with millisecond precision.</p>"
},
{
"name": "String",

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

@ -8033,7 +8033,7 @@
},
{
"name": "committedViaWeb",
"description": "<p>Check if commited via GitHub web UI.</p>",
"description": "<p>Check if committed via GitHub web UI.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
@ -8041,7 +8041,7 @@
},
{
"name": "committer",
"description": "<p>Committership details of the commit.</p>",
"description": "<p>Committer details of the commit.</p>",
"type": "GitActor",
"id": "gitactor",
"kind": "objects",
@ -9463,6 +9463,14 @@
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
},
{
"name": "contributionLevel",
"description": "<p>Indication of contributions, relative to other days. Can be used to indicate\nwhich color to represent this day on a calendar.</p>",
"type": "ContributionLevel!",
"id": "contributionlevel",
"kind": "enums",
"href": "/graphql/reference/enums#contributionlevel"
},
{
"name": "date",
"description": "<p>The day this square represents.</p>",
@ -21252,7 +21260,7 @@
},
{
"name": "progressPercentage",
"description": "<p>Indentifies the percentage complete for the milestone.</p>",
"description": "<p>Identifies the percentage complete for the milestone.</p>",
"type": "Float!",
"id": "float",
"kind": "scalars",
@ -25587,7 +25595,7 @@
},
{
"name": "restoredIssueAssignmentsCount",
"description": "<p>The number of issue assignemnts for the restored member.</p>",
"description": "<p>The number of issue assignments for the restored member.</p>",
"type": "Int",
"id": "int",
"kind": "scalars",
@ -28174,7 +28182,7 @@
},
{
"name": "idpCertificate",
"description": "<p>The x509 certificate used by the Identity Provder to sign assertions and responses.</p>",
"description": "<p>The x509 certificate used by the Identity Provider to sign assertions and responses.</p>",
"type": "X509Certificate",
"id": "x509certificate",
"kind": "scalars",
@ -35100,6 +35108,14 @@
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "isLatest",
"description": "<p>Whether or not the release is the latest releast.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "isPrerelease",
"description": "<p>Whether or not the release is a prerelease.</p>",
@ -38826,7 +38842,7 @@
},
{
"name": "forkSourceName",
"description": "<p>The name of the root repository for this netork.</p>",
"description": "<p>The name of the root repository for this network.</p>",
"type": "String",
"id": "string",
"kind": "scalars",
@ -40573,6 +40589,14 @@
}
]
},
{
"name": "latestRelease",
"description": "<p>Get the latest release for the repository if one exists.</p>",
"type": "Release",
"id": "release",
"kind": "objects",
"href": "/graphql/reference/objects#release"
},
{
"name": "licenseInfo",
"description": "<p>The license associated with the repository.</p>",
@ -42638,7 +42662,7 @@
},
{
"name": "dismissedAt",
"description": "<p>When was the alert dimissed?.</p>",
"description": "<p>When was the alert dismissed?.</p>",
"type": "DateTime",
"id": "datetime",
"kind": "scalars",
@ -42670,7 +42694,7 @@
},
{
"name": "securityVulnerability",
"description": "<p>The associated security vulnerablity.</p>",
"description": "<p>The associated security vulnerability.</p>",
"type": "SecurityVulnerability",
"id": "securityvulnerability",
"kind": "objects",
@ -51351,6 +51375,110 @@
}
]
},
{
"name": "VerifiableDomain",
"kind": "objects",
"id": "verifiabledomain",
"href": "/graphql/reference/objects#verifiabledomain",
"description": "<p>A domain that can be verified for an organization or an enterprise.</p>",
"implements": [
{
"name": "Node",
"id": "node",
"href": "/graphql/reference/interfaces#node"
}
],
"fields": [
{
"name": "databaseId",
"description": "<p>Identifies the primary key from the database.</p>",
"type": "Int",
"id": "int",
"kind": "scalars",
"href": "/graphql/reference/scalars#int"
},
{
"name": "dnsHostName",
"description": "<p>The DNS host name that should be used for verification.</p>",
"type": "URI",
"id": "uri",
"kind": "scalars",
"href": "/graphql/reference/scalars#uri"
},
{
"name": "domain",
"description": "<p>The unicode encoded domain.</p>",
"type": "URI!",
"id": "uri",
"kind": "scalars",
"href": "/graphql/reference/scalars#uri"
},
{
"name": "hasFoundHostName",
"description": "<p>Whether a TXT record for verification with the expected host name was found.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "hasFoundVerificationToken",
"description": "<p>Whether a TXT record for verification with the expected verification token was found.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "isRequiredForPolicyEnforcement",
"description": "<p>Whether this domain is required to exist for an organization policy to be enforced.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "isVerified",
"description": "<p>Whether or not the domain is verified.</p>",
"type": "Boolean!",
"id": "boolean",
"kind": "scalars",
"href": "/graphql/reference/scalars#boolean"
},
{
"name": "owner",
"description": "<p>The owner of the domain.</p>",
"type": "VerifiableDomainOwner!",
"id": "verifiabledomainowner",
"kind": "unions",
"href": "/graphql/reference/unions#verifiabledomainowner"
},
{
"name": "punycodeEncodedDomain",
"description": "<p>The punycode encoded domain.</p>",
"type": "URI!",
"id": "uri",
"kind": "scalars",
"href": "/graphql/reference/scalars#uri"
},
{
"name": "tokenExpirationTime",
"description": "<p>The time that the current verification token will expire.</p>",
"type": "DateTime",
"id": "datetime",
"kind": "scalars",
"href": "/graphql/reference/scalars#datetime"
},
{
"name": "verificationToken",
"description": "<p>The current verification token for the domain.</p>",
"type": "String",
"id": "string",
"kind": "scalars",
"href": "/graphql/reference/scalars#string"
}
]
},
{
"name": "ViewerHovercardContext",
"kind": "objects",
@ -53893,6 +54021,35 @@
}
]
},
{
"name": "ContributionLevel",
"kind": "enums",
"id": "contributionlevel",
"href": "/graphql/reference/enums#contributionlevel",
"description": "<p>Varying levels of contributions from none to many.</p>",
"values": [
{
"name": "FIRST_QUARTILE",
"description": "<p>Lowest 25% of days of contributions.</p>"
},
{
"name": "FOURTH_QUARTILE",
"description": "<p>Highest 25% of days of contributions. More contributions than the third quartile.</p>"
},
{
"name": "NONE",
"description": "<p>No contributions occurred.</p>"
},
{
"name": "SECOND_QUARTILE",
"description": "<p>Second lowest 25% of days of contributions. More contributions than the first quartile.</p>"
},
{
"name": "THIRD_QUARTILE",
"description": "<p>Second highest 25% of days of contributions. More contributions than second quartile, less than the fourth quartile.</p>"
}
]
},
{
"name": "DefaultRepositoryPermissionField",
"kind": "enums",
@ -54014,6 +54171,10 @@
{
"name": "SUCCESS",
"description": "<p>The deployment was successful.</p>"
},
{
"name": "WAITING",
"description": "<p>The deployment is waiting.</p>"
}
]
},
@ -54400,7 +54561,7 @@
},
{
"name": "OCSP_ERROR",
"description": "<p>Valid siganture, though certificate revocation check failed.</p>"
"description": "<p>Valid signature, though certificate revocation check failed.</p>"
},
{
"name": "OCSP_PENDING",
@ -58200,7 +58361,7 @@
"kind": "unions",
"id": "sponsor",
"href": "/graphql/reference/unions#sponsor",
"description": "<p>Entites that can sponsor others via GitHub Sponsors.</p>",
"description": "<p>Entities that can sponsor others via GitHub Sponsors.</p>",
"possibleTypes": [
{
"name": "Organization",
@ -58232,6 +58393,25 @@
"href": "/graphql/reference/objects#statuscontext"
}
]
},
{
"name": "VerifiableDomainOwner",
"kind": "unions",
"id": "verifiabledomainowner",
"href": "/graphql/reference/unions#verifiabledomainowner",
"description": "<p>Types that can own a verifiable domain.</p>",
"possibleTypes": [
{
"name": "Enterprise",
"id": "enterprise",
"href": "/graphql/reference/objects#enterprise"
},
{
"name": "Organization",
"id": "organization",
"href": "/graphql/reference/objects#organization"
}
]
}
],
"inputObjects": [
@ -60538,7 +60718,7 @@
},
{
"name": "private",
"description": "<p>If true, restricts the visiblity of this discussion to team members and\norganization admins. If false or not specified, allows any organization member\nto view this discussion.</p>",
"description": "<p>If true, restricts the visibility of this discussion to team members and\norganization admins. If false or not specified, allows any organization member\nto view this discussion.</p>",
"type": "Boolean",
"id": "boolean",
"kind": "scalars",
@ -64959,7 +65139,7 @@
},
{
"name": "id",
"description": "<p>The Node ID of the team to update review assginments of.</p>",
"description": "<p>The Node ID of the team to update review assignments of.</p>",
"type": "ID!",
"id": "id",
"kind": "scalars",
@ -65139,7 +65319,7 @@
"kind": "scalars",
"id": "precisedatetime",
"href": "/graphql/reference/scalars#precisedatetime",
"description": "<p>An ISO-8601 encoded UTC date string with millisecond precison.</p>"
"description": "<p>An ISO-8601 encoded UTC date string with millisecond precision.</p>"
},
{
"name": "String",

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

@ -67,7 +67,7 @@ function getNewVersionedPath (oldPath, languageCode = '') {
const restOfString = oldPath.replace(patterns.oldEnterprisePath, '')
// Add the language and new version to the product part of the string
return path.join('/', languageCode, newVersion, restOfString)
return path.posix.join('/', languageCode, newVersion, restOfString)
}
module.exports = {

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

@ -15,7 +15,7 @@ class Permalink {
const permalinkSuffix = this.constructor.relativePathToSuffix(relativePath)
this.href = removeFPTFromPath(path.join('/', languageCode, pageVersion, permalinkSuffix))
this.href = removeFPTFromPath(path.posix.join('/', languageCode, pageVersion, permalinkSuffix))
.replace(patterns.trailingSlash, '$1')
this.pageVersionTitle = allVersions[pageVersion].versionTitle

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

@ -74,7 +74,7 @@ module.exports = function getDocsPathFromDeveloperPath (oldDeveloperPath, allRed
// old developer routes that include 'enterprise-admin' should always redirect to enterprise server
if (fragment && newPath.includes('/rest/reference/enterprise-admin') && !patterns.enterpriseServer.test(newPath)) {
newPath = path.join('/en', `enterprise-server@${latest}`, getPathWithoutLanguage(getPathWithoutVersion(newPath)))
newPath = path.posix.join('/en', `enterprise-server@${latest}`, getPathWithoutLanguage(getPathWithoutVersion(newPath)))
}
// show an error if the page to be redirected to doesn't exist

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

@ -36,7 +36,7 @@ module.exports = function generateRedirectsForPermalinks (permalinks, redirectFr
}
// get the old path for the current permalink version
let versionedFrontmatterOldPath = path.join('/', permalink.languageCode, getNewVersionedPath(frontmatterOldPath))
let versionedFrontmatterOldPath = path.posix.join('/', permalink.languageCode, getNewVersionedPath(frontmatterOldPath))
const versionFromPath = getVersionStringFromPath(versionedFrontmatterOldPath)
versionedFrontmatterOldPath = removeFPTFromPath(versionedFrontmatterOldPath.replace(versionFromPath, permalink.pageVersion))

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

@ -1,9 +1,6 @@
const patterns = require('../patterns')
const { latest } = require('../enterprise-server-releases')
const getOldPathsFromPermalink = require('../redirects/get-old-paths-from-permalink')
const getDocsPathFromDevPath = require('../redirects/get-docs-path-from-developer-path')
const DEVELOPER_ROUTES = require('../redirects/static/developer-docs-routes-for-supported-versions')
const ARCHIVED_ROUTES = require('../redirects/static/archived-routes-from-213-to-217')
// This function runs at server warmup and precompiles possible redirect routes.
// It outputs them in key-value pairs within a neat Javascript object: { oldPath: newPath }
@ -14,26 +11,7 @@ module.exports = function precompileRedirects (pageList, pageMap) {
// create backwards-compatible old paths for page permalinks and frontmatter redirects
pageList.forEach(page => Object.assign(allRedirects, page.buildRedirects()))
// 2. REDIRECTS FOR ARCHIVED ROUTES FROM 2.13 TO 2.17
// Starting with 2.18, we updated the archival script to create stubbed HTML redirect files,
// so those files do the heavy lifting. The handling here is only for blanket redirects
// (like /articles -> /github) between 2.13 and 2.17. This works by creating possible
// old/incoming paths from the archived routes JSON. Frontmatter redirects were lost
// for 2.13-2.17, but the archived middleware tries to find fallbacks.
ARCHIVED_ROUTES.forEach(archivedRoute => {
const languageFromPath = archivedRoute.match(patterns.getLanguageCode)[1]
const versionFromPath = archivedRoute.match(patterns.getEnterpriseVersionNumber)[1]
// get an array of possible old paths, e.g., /desktop/guides/ from /desktop/
const possibleOldPaths = getOldPathsFromPermalink(archivedRoute, languageFromPath, versionFromPath)
// for each old path, add a redirect to the current route
possibleOldPaths.forEach(oldPath => {
allRedirects[oldPath] = archivedRoute
})
})
// 3. DEVELOPER ROUTES FOR CURRENTLY SUPPORTED VERSIONS
// 2. DEVELOPER ROUTES FOR CURRENTLY SUPPORTED VERSIONS
// From the list of developer docs routes, create new docs.github.com-style paths.
// Note that the list only includes supported enterprise paths up to 2.21, which is
// the last version that was available on developer.github.com before the migration.

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

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

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

@ -52,7 +52,7 @@ function getNewHref (link, languageCode, version) {
const hrefWithoutLang = getPathWithoutLanguage(href)
// normalize any legacy links so they conform to new link structure
newHref = path.join('/', languageCode, getNewVersionedPath(hrefWithoutLang))
newHref = path.posix.join('/', languageCode, getNewVersionedPath(hrefWithoutLang))
// get the current version from the link
const versionFromHref = getVersionStringFromPath(newHref)

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

@ -37,7 +37,7 @@ module.exports = async function buildSiteTree (pageMap, site, redirects) {
return
}
product.href = path.join('/', languageCode, item.href)
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)
@ -71,7 +71,7 @@ function buildCategoriesTree (tocItems, versionedProductHref, pageMap, redirects
tocItems.forEach(item => {
const category = {}
category.href = path.join(versionedProductHref, item.href)
category.href = path.posix.join(versionedProductHref, item.href)
// find the category TOC page and get its TOC items
const page = findPage(category.href, pageMap, redirects)
@ -115,7 +115,7 @@ function buildMaptopicsTree (tocItems, versionedCategoryHref, pageMap, redirects
.forEach(item => {
const maptopic = {}
maptopic.href = path.join(versionedCategoryHref, item.href)
maptopic.href = path.posix.join(versionedCategoryHref, item.href)
// find the category TOC page and get its TOC items
const page = findPage(maptopic.href, pageMap, redirects)
@ -150,7 +150,7 @@ function buildArticlesTree (tocItems, versionedCategoryHref, pageMap, redirects,
tocItems.forEach(item => {
const article = {}
article.href = path.join(versionedCategoryHref, item.href)
article.href = path.posix.join(versionedCategoryHref, item.href)
// find the category TOC page and get its TOC items
const page = findPage(article.href, pageMap, redirects)

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

@ -6,6 +6,7 @@ const versionSatisfiesRange = require('../lib/version-satisfies-range')
const isArchivedVersion = require('../lib/is-archived-version')
const findPage = require('../lib/find-page')
const got = require('got')
const archvivedRedirects = require('../lib/redirects/static/archived-redirects-from-213-to-217')
// This module handles requests for deprecated GitHub Enterprise versions
// by routing them to static content in help-docs-archived-enterprise-versions
@ -27,7 +28,7 @@ module.exports = async (req, res, next) => {
// starting with 2.18, we updated the archival script to create stubbed HTML redirect files
if (versionSatisfiesRange(requestedVersion, `>=${firstVersionDeprecatedOnNewSite}`) &&
versionSatisfiesRange(requestedVersion, `<=${lastVersionWithoutStubbedRedirectFiles}`)) {
const redirect = req.context.redirects[req.path]
const redirect = archvivedRedirects[req.path]
if (redirect && redirect !== req.path) {
return res.redirect(301, redirect)
}

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

@ -10,6 +10,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'overview'
---
{% data reusables.actions.enterprise-beta %}

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

@ -5,6 +5,7 @@ product: '{% data reusables.gated-features.actions %}'
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}
@ -93,7 +94,7 @@ Before you begin, you'll create a {% data variables.product.product_name %} repo
git push
```
1. From your terminal, add a tag. This example uses a tag called `v1`. For more information, see "[About actions](/actions/creating-actions/about-actions#using-release-management-for-actions)."
1. From your terminal, add a tag. This example uses a tag called `v1`. Weitere Informationen finden Sie unter „[Informationen zu Aktionen](/actions/creating-actions/about-actions#using-release-management-for-actions).
```shell
git tag -a -m "Description of this release" v1

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

@ -10,6 +10,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -10,6 +10,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -8,6 +8,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'reference'
---
{% data reusables.actions.enterprise-beta %}
@ -60,14 +61,14 @@ ENTRYPOINT ["sh", "-c", "echo $GITHUB_SHA"]
Um `args` aus der Metadaten-Datei der Aktion an einen Docker Container zu übergeben, der die _exec_-Form im `ENTRYPOINT` verwendet, empfehlen wir, ein Shell-Skript namens `entrypoint.sh` zu erstellen und dieses von der `ENTRYPOINT`-Anweisung aus anrufen:
##### Beispiel *Dockerfile*
```
# Container-Image, das Deinen Code ausführt
```
# Container image that runs your code
FROM debian:9.5-slim
# Kopiert Deine Code-Datei aus Deinem Aktions-Repository in den Dateisystem-Pfad `/` des Containers
# Copies your code file from your action repository to the filesystem path `/` of the container
COPY entrypoint.sh /entrypoint.sh
# Ruft `entrypoint.sh` wenn der Docker-Container hochfaehrt
# Executes `entrypoint.sh` when the Docker container starts up
ENTRYPOINT ["/entrypoint.sh"]
```
@ -78,14 +79,14 @@ Mit dem obigen Dockerfile-Beispiel sendet {% data variables.product.product_name
``` sh
#!/bin/sh
# `$*` erweitert die in einem `array` gelieferten `args` individuell
# oder teilt einen String `args` an Whitespaces in Teil-Strings auf.
# `$*` expands the `args` supplied in an `array` individually
# or splits `args` in a string separated by whitespace.
sh -c "echo $*"
```
Dein Code muss ausführbar sein. Stelle sicher, dass die Datei `entrypoint.sh` die Berechtigunge `execute` hat, bevor Du sie in einem Workflow verwendest. Du kannst die Berechtigung von Deinem Terminal aus mit diesem Befehl ändern:
``` sh
chmod +x entrypoint.sh
chmod +x entrypoint.sh
```
Wenn ein `ENTRYPOINT`-Shell-Skript nicht ausführbar ist, erhältst Du einen Fehler, der ungefähr so aussieht:

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

@ -11,6 +11,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'reference'
---
{% data reusables.actions.enterprise-beta %}
@ -103,16 +104,16 @@ outputs:
{% raw %}
```yaml
Outputs:
Zufallszahl:
Beschreibung: "Zufallszahl"
Wert:{{ steps.random-number-generator.outputs.random-id }}
läuft:
mit: "composite"
Schritten:
- id: zuzufälliger Zahlengenerator
ausführen: echo "::set-output name=random-id::'(echo $RANDOM)"
Shell: bash
outputs:
random-number:
description: "Random number"
value: ${{ steps.random-number-generator.outputs.random-id }}
runs:
using: "composite"
steps:
- id: random-number-generator
run: echo "::set-output name=random-id::$(echo $RANDOM)"
shell: bash
```
{% endraw %}
@ -211,22 +212,22 @@ In diesem Beispiel läuft `cleanup.js` nur auf Linux-basierten Runnern:
{% raw %}
```yaml
läuft:
mit: "composite"
Schritte:
- ausführen:{{ github.action_path }}/test/script.sh
Shell: bash
runs:
using: "composite"
steps:
- run: ${{ github.action_path }}/test/script.sh
shell: bash
```
{% endraw %}
Alternatively, you can use `$GITHUB_ACTION_PATH`:
```yaml
läuft:
verwenden: "composite"
Schritte:
- ausführen: $GITHUB_ACTION_PATH/script.sh
Shell: bash
runs:
using: "composite"
steps:
- run: $GITHUB_ACTION_PATH/script.sh
shell: bash
```
For more information, see "[`github context`](/actions/reference/context-and-expression-syntax-for-github-actions#github-context)".
@ -258,7 +259,7 @@ For more information, see "[`github context`](/actions/reference/context-and-exp
#### Beispiel für die Nutzung eines Dockerfiles in Deinem Repository
```yaml
runs:
runs:
using: 'docker'
image: 'Dockerfile'
```
@ -266,9 +267,9 @@ runs:
#### Beispiel zur Nutzung des öffentlichen Docker-Registry-Containers
```yaml
läuft:
mit: 'docker'
Image: 'docker://debian:stretch-slim'
runs:
using: 'docker'
image: 'docker://debian:stretch-slim'
```
#### `runs.using`

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

@ -8,6 +8,7 @@ redirect_from:
- /actions/building-actions/publishing-actions-in-github-marketplace
versions:
free-pro-team: '*'
type: 'how_to'
---
You must accept the terms of service to publish actions in {% data variables.product.prodname_marketplace %}.

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

@ -8,6 +8,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'how_to'
---
{% data reusables.actions.enterprise-beta %}

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

@ -10,6 +10,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'overview'
---
{% data reusables.actions.enterprise-beta %}

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

@ -8,6 +8,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'overview'
---
{% data reusables.actions.enterprise-beta %}

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

@ -8,6 +8,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'overview'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -0,0 +1,248 @@
---
title: Building and testing .NET
intro: You can create a continuous integration (CI) workflow to build and test your .NET project.
product: '{% data reusables.gated-features.actions %}'
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
---
### Einführung
This guide shows you how to build, test, and publish a .NET package.
{% data variables.product.prodname_dotcom %}-hosted runners have a tools cache with preinstalled software, which includes the .NET Core SDK. For a full list of up-to-date software and the preinstalled versions of .NET Core SDK, see [software installed on {% data variables.product.prodname_dotcom %}-hosted runners](/actions/reference/specifications-for-github-hosted-runners).
### Vorrausetzungen
You should already be familiar with YAML syntax and how it's used with {% data variables.product.prodname_actions %}. Weitere Informationen findest Du unter „[Workflow Syntax für {% data variables.product.prodname_actions %}](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions)."
We recommend that you have a basic understanding of the .NET Core SDK. For more information, see [Getting started with .NET](https://dotnet.microsoft.com/learn).
### Starting with the .NET workflow template
{% data variables.product.prodname_dotcom %} provides a .NET workflow template that should work for most .NET projects, and this guide includes examples that show you how to customize this template. For more information, see the [.NET workflow template](https://github.com/actions/setup-dotnet).
Um schnell loszulegen, füge die Vorlage in das Verzeichnis `.github/workflows` Deines Repositorys ein.
{% raw %}
```yaml
name: dotnet package
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
dotnet-version: [ '2.2.103', '3.0', '3.1.x' ]
steps:
- uses: actions/checkout@v2
- name: Setup .NET Core SDK ${{ matrix.dotnet }}
uses: actions/setup-dotnet@v1.6.0
with:
dotnet-version: {{ matrix.dotnet-version }}
- name: Install dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release --no-restore
- name: Test
run: dotnet test --no-restore --verbosity normal
```
{% endraw %}
### Specifying a .NET version
To use a preinstalled version of the .NET Core SDK on a {% data variables.product.prodname_dotcom %}-hosted runner, use the `setup-dotnet` action. This action finds a specific version of .NET from the tools cache on each runner, and adds the necessary binaries to `PATH`. These changes will persist for the remainder of the job.
The `setup-dotnet` action is the recommended way of using .NET with {% data variables.product.prodname_actions %}, because it ensures consistent behavior across different runners and different versions of .NET. If you are using a self-hosted runner, you must install .NET and add it to `PATH`. For more information, see the [`setup-dotnet`](https://github.com/marketplace/actions/setup-dotnet).
#### Using multiple .NET versions
{% raw %}
```yaml
name: dotnet package
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
dotnet: [ '2.2.103', '3.0', '3.1.x' ]
steps:
- uses: actions/checkout@v2
- name: Setup dotnet ${{ matrix.dotnet-version }}
uses: actions/setup-dotnet@v1.6.0
with:
dotnet-version: ${{ matrix.dotnet-version }}
# You can test your matrix by printing the current dotnet version
- name: Display dotnet version
run: dotnet --version
```
{% endraw %}
#### Using a specific .NET version
You can configure your job to use a specific version of .NET, such as `3.1.3`. Alternatively, you can use semantic version syntax to get the latest minor release. This example uses the latest minor release of .NET 3.
{% raw %}
```yaml
- name: Setup .NET 3.x
uses: actions/setup-dotnet@v2
with:
# Semantic version range syntax or exact version of a dotnet version
dotnet-version: '3.x'
```
{% endraw %}
### Abhängigkeiten installieren
{% data variables.product.prodname_dotcom %}-hosted runners have the NuGet package manager installed. You can use the dotnet CLI to install dependencies from the NuGet package registry before building and testing your code. For example, the YAML below installs the `Newtonsoft` package.
{% raw %}
```yaml
steps:
- uses: actions/checkout@v2
- name: Setup dotnet
uses: actions/setup-dotnet@v1.6.0
with:
dotnet-version: '3.1.x'
- name: Install dependencies
run: dotnet add package Newtonsoft.Json --version 12.0.1
```
{% endraw %}
{% if currentVersion == "free-pro-team@latest" %}
#### Abhängigkeiten „cachen“ (zwischenspeichern)
You can cache NuGet dependencies using a unique key, which allows you to restore the dependencies for future workflows with the [`cache`](https://github.com/marketplace/actions/cache) action. For example, the YAML below installs the `Newtonsoft` package.
For more information, see "[Caching dependencies to speed up workflows](/actions/guides/caching-dependencies-to-speed-up-workflows)."
{% raw %}
```yaml
steps:
- uses: actions/checkout@v2
- name: Setup dotnet
uses: actions/setup-dotnet@v1.6.0
with:
dotnet-version: '3.1.x'
- uses: actions/cache@v2
with:
path: ~/.nuget/packages
# Look to see if there is a cache hit for the corresponding requirements file
key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }}
restore-keys: |
${{ runner.os }}-nuget
- name: Install dependencies
run: dotnet add package Newtonsoft.Json --version 12.0.1
```
{% endraw %}
{% note %}
**Note:** Depending on the number of dependencies, it may be faster to use the dependency cache. Projects with many large dependencies should see a performance increase as it cuts down the time required for downloading. Projects with fewer dependencies may not see a significant performance increase and may even see a slight decrease due to how NuGet installs cached dependencies. The performance varies from project to project.
{% endnote %}
{% endif %}
### Deinen Code bauen und testen
Du kannst die gleichen Befehle verwenden, die Du auch lokal verwendest, um Deinen Code zu erstellen und zu testen. This example demonstrates how to use `dotnet build` and `dotnet test` in a job:
{% raw %}
```yaml
steps:
- uses: actions/checkout@v2
- name: Setup dotnet
uses: actions/setup-dotnet@v1.6.0
with:
dotnet-version: '3.1.x'
- name: Install dependencies
run: dotnet restore
- name: Build
run: dotnet build
- name: Test with the dotnet CLI
run: dotnet test
```
{% endraw %}
### Workflow-Daten als Artefakte paketieren
After a workflow completes, you can upload the resulting artifacts for analysis. Zum Beispiel kann es notwendig sein, Logdateien, Core Dumps, Testergebnisse oder Screenshots zu speichern. The following example demonstrates how you can use the `upload-artifact` action to upload test results.
Weitere Informationen findest Du unter "[Workflow-Daten mittels Artefakten persistieren](/github/automating-your-workflow-with-github-actions/persisting-workflow-data-using-artifacts)."
{% raw %}
```yaml
name: dotnet package
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
dotnet-version: [ '2.2.103', '3.0', '3.1.x' ]
steps:
- uses: actions/checkout@v2
- name: Setup dotnet
uses: actions/setup-dotnet@v1.6.0
with:
dotnet-version: ${{ matrix.dotnet-version }}
- name: Install dependencies
run: dotnet restore
- name: Test with dotnet
run: dotnet test --logger trx --results-directory "TestResults-${{ matrix.dotnet-version }}"
- name: Upload dotnet test results
uses: actions/upload-artifact@v2
with:
name: dotnet-results-${{ matrix.dotnet-version }}
path: TestResults-${{ matrix.dotnet-version }}
# Use always() to always run this step to publish test results when there are test failures
if: ${{ always() }}
```
{% endraw %}
### In Paket-Registries veröffentlichen
You can configure your workflow to publish your Dotnet package to a package registry when your CI tests pass. You can use repository secrets to store any tokens or credentials needed to publish your binary. The following example creates and publishes a package to {% data variables.product.prodname_registry %} using `dotnet core cli`.
{% raw %}
```yaml
name: Upload dotnet package
on:
release:
types: [created]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-dotnet@v1
with:
dotnet-version: '3.1.x' # SDK Version to use.
source-url: https://nuget.pkg.github.com/<owner>/index.json
env:
NUGET_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
- run: dotnet build <my project>
- name: Create the package
run: dotnet pack --configuration Release <my project>
- name: Publish the package to GPR
run: dotnet nuget push <my project>/bin/Release/*.nupkg
```
{% endraw %}

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

@ -8,6 +8,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}
@ -36,7 +37,11 @@ Um schnell loszulegen, füge die Vorlage in das Verzeichnis `.github/workflows`
```yaml{:copy}
name: Node.js CI
on: [push]
on:
push:
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
jobs:
build:
@ -45,7 +50,7 @@ jobs:
strategy:
matrix:
node-version: [8.x, 10.x, 12.x]
node-version: [10.x, 12.x, 14.x, 15.x]
steps:
- uses: actions/checkout@v2
@ -53,11 +58,9 @@ jobs:
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm ci
- run: npm run build --if-present
- run: npm test
env:
CI: true
```
{% endraw %}
@ -69,7 +72,7 @@ Der einfachste Weg, eine Node.js-Version anzugeben, ist die Aktion `setup-node`
Die Aktion `setup-node` nimmt eine Node.js-Version als Eingabe und konfiguriert diese Version auf dem Runner. Die Aktion `setup-node` findet auf jedem Runner eine bestimmte Version von Node.js aus dem Tools-Cache und legt die notwendigen Binärdateien im `PATH` ab, wo sie für den Rest des Jobs bestehen bleiben. Für Node.js mit {% data variables.product.prodname_actions %} wird empfohlen, die Aktion `setup-node` zu verwenden, weil dadurch über verschiedenen Runner und verschiedenen Versionen von Node.js hinweg ein konsistentes Verhalten sicherstellt wird. Wenn Du einen selbst gehosteten Runner verwendest, musst Du Node.js installieren und zum `PATH` hinzufügen.
Die Vorlage enthält eine Matrix-Strategie, die Deinen Code mit drei Node.js-Versionen baut und testet: 8.x, 10.x und 12.x. Das 'x' ist ein Platzhalterzeichen, für das neueste Minor- und Patch-Release des jeweiligen Major-Releases steht. The 'x' is a wildcard character that matches the latest minor and patch release available for a version. Jede Version von Node.js, die im Array `node-version` festgelegt ist, erstellt einen Job, der die gleichen Schritte ausführt.
The template includes a matrix strategy that builds and tests your code with four Node.js versions: 10.x, 12.x, 14.x, and 15.x. The 'x' is a wildcard character that matches the latest minor and patch release available for a version. Jede Version von Node.js, die im Array `node-version` festgelegt ist, erstellt einen Job, der die gleichen Schritte ausführt.
Jeder Job in der Matrix kann mithilfe des `Matrix`-Kontexts auf den im Array `node-version` definierten Wert zugreifen. Die Aktion `setup-node` verwendet den Kontext als Eingabe für `node-version`. Die Aktion `setup-node` konfiguriert jeden Job mit einer anderen Node.js-Version bevor sie den Code baut und testet. Weitere Informationen zu Matrix-Strategien und Kontexten findest Du unter „[Workflow-Syntax für {% data variables.product.prodname_actions %}](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idstrategymatrix)“ und „[Kontext- und Ausdruckssyntax für {% data variables.product.prodname_actions %}](/actions/reference/context-and-expression-syntax-for-github-actions)“.
@ -77,7 +80,7 @@ Jeder Job in der Matrix kann mithilfe des `Matrix`-Kontexts auf den im Array `no
```yaml
strategy:
matrix:
node-version: [8.x, 10.x, 12.x]
node-version: [10.x, 12.x, 14.x, 15.x]
steps:
- uses: actions/checkout@v2
@ -115,11 +118,9 @@ jobs:
uses: actions/setup-node@v1
with:
node-version: '12.x'
- run: npm install
- run: npm ci
- run: npm run build --if-present
- run: npm test
env:
CI: true
```
{% endraw %}

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

@ -7,6 +7,7 @@ versions:
enterprise-server: '>=2.22'
authors:
- potatoqualitee
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}
@ -122,7 +123,7 @@ jobs:
#### Eine bestimmten Python-Version verwenden
Du kannst eine bestimmte Version von Python konfigurieren, For example, 3.8. Alternativ kannst Du auch Syntax für semantische Versionierung verwenden, um das neuste Minor Release zu erhalten. Dieses Beispiel verwendet das neueste Minor Release von Python 3.
Du kannst eine bestimmte Version von Python konfigurieren, For example, 3.8. Alternatively, you can use semantic version syntax to get the latest minor release. Dieses Beispiel verwendet das neueste Minor Release von Python 3.
{% raw %}
```yaml

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

@ -5,6 +5,7 @@ product: '{% data reusables.gated-features.actions %}'
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -9,6 +9,7 @@ redirect_from:
- /actions/configuring-and-managing-workflows/caching-dependencies-to-speed-up-workflows
versions:
free-pro-team: '*'
type: 'tutorial'
---
### Informationen zum Zwischenspeichern von Workflow-Abhängigkeiten

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

@ -9,6 +9,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -9,6 +9,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -17,54 +17,35 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
learningTracks:
- getting_started
- continuous_integration
- continuous_deployment
- hosting_your_own_runners
- create_actions
layout: product-sublanding
---
{% data reusables.actions.enterprise-beta %}
{% data reusables.actions.enterprise-github-hosted-runners %}
### Creating custom continuous integration workflows
You can use {% data variables.product.prodname_actions %} to create custom continuous integration (CI) workflows that build and test projects written in different programming languages.
{% link_in_list /about-continuous-integration %}
{% link_in_list /setting-up-continuous-integration-using-workflow-templates %}
{% link_in_list /building-and-testing-nodejs %}
{% link_in_list /building-and-testing-powershell %}
{% link_in_list /building-and-testing-python %}
{% link_in_list /building-and-testing-ruby %}
{% link_in_list /building-and-testing-java-with-maven %}
{% link_in_list /building-and-testing-java-with-gradle %}
{% link_in_list /building-and-testing-java-with-ant %}
### Creating custom continuous deployment workflows
You can use {% data variables.product.prodname_actions %} to create custom continuous deployment (CD) workflows that deploy projects to a number of cloud partner ecosystems.
{% link_in_list /deploying-to-amazon-elastic-container-service %}
{% link_in_list /deploying-to-azure-app-service %}
{% link_in_list /deploying-to-google-kubernetes-engine %}
### Publishing software packages
You can automate publishing software packages as part your continuous delivery (CD) workflow. Packages can be published to any package host and to {% data reusables.gated-features.packages %}.
{% link_in_list /about-packaging-with-github-actions %}
{% link_in_list /publishing-nodejs-packages %}
{% link_in_list /publishing-java-packages-with-maven %}
{% link_in_list /publishing-java-packages-with-gradle %}
{% link_in_list /publishing-docker-images %}
### Workflow-Daten speichern und zwischenspeichern
Abhängigkeiten zwischenspeichern und Artefakte speichern, um Deinen Workflow effizienter ablaufen zu lassen.
{% link_in_list /storing-workflow-data-as-artifacts %}
{% link_in_list /caching-dependencies-to-speed-up-workflows %}
### Using service containers in a workflow
Connect services to your workflow using service containers.
{% link_in_list /about-service-containers %}
{% link_in_list /creating-redis-service-containers %}
{% link_in_list /creating-postgresql-service-containers %}
<!-- {% link_in_list /about-continuous-integration %} -->
<!-- {% link_in_list /setting-up-continuous-integration-using-workflow-templates %} -->
<!-- {% link_in_list /building-and-testing-nodejs %} -->
<!-- {% link_in_list /building-and-testing-net %} -->
<!-- {% link_in_list /building-and-testing-powershell %} -->
<!-- {% link_in_list /building-and-testing-python %} -->
<!-- {% link_in_list /building-and-testing-ruby %} -->
<!-- {% link_in_list /building-and-testing-java-with-maven %} -->
<!-- {% link_in_list /building-and-testing-java-with-gradle %} -->
<!-- {% link_in_list /building-and-testing-java-with-ant %} -->
<!-- {% link_in_list /about-packaging-with-github-actions %} -->
<!-- {% link_in_list /publishing-nodejs-packages %} -->
<!-- {% link_in_list /publishing-java-packages-with-maven %} -->
<!-- {% link_in_list /publishing-java-packages-with-gradle %} -->
<!-- {% link_in_list /publishing-docker-images %} -->
<!-- {% link_in_list /storing-workflow-data-as-artifacts %} -->
<!-- {% link_in_list /caching-dependencies-to-speed-up-workflows %} -->
<!-- {% link_in_list /about-service-containers %} -->
<!-- {% link_in_list /creating-redis-service-containers %} -->
<!-- {% link_in_list /creating-postgresql-service-containers %} -->
<!-- {% link_in_list /deploying-to-amazon-elastic-container-service %} -->
<!-- {% link_in_list /deploying-to-azure-app-service %} -->
<!-- {% link_in_list /deploying-to-google-kubernetes-engine %} -->

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -8,6 +8,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}
@ -87,9 +88,28 @@ always-auth=true
Jedes Mal, wenn Du ein neues Release erstellst, kannst Du einen Workflow anstoßen, um Dein Paket zu veröffentlichen. Der Workflow im folgenden Beispiel läuft jedes Mal, wenn das Ereignis `release` vom Typ `created` auftritt. Der Workflow veröffentlicht das Paket in {% data variables.product.prodname_registry %} , wenn die CI-Tests bestanden wurden.
Standardmäßig veröffentlicht die {% data variables.product.prodname_registry %} ein Paket in dem Repository auf {% data variables.product.prodname_dotcom %}, das Du im Feld `name` der Datei *package.json* angibst. Ein Paket namens `@my-org/test` würde beispielsweise im Repository `my-org/test` auf {% data variables.product.prodname_dotcom %} veröffentlicht. Weitere Informationen finden Sie unter [„`npm-scope`“ (npm-Gültigkeitsbereich)](https://docs.npmjs.com/misc/scope) in der npm-Dokumentation.
#### Configuring the destination repository
Um authentifizierte Vorgänge für die Registry {% data variables.product.prodname_registry %} in Deinem Workflow kannst Du den `GITHUB_TOKEN` verwenden. Der `GITHUB_TOKEN` existiert standardmäßig in Deinem Repository und hat Lese- und Schreibrechte für Pakete in dem Repository, in dem der Workflow läuft. Weitere Informationen findest Du unter „[Verschlüsselte Geheimnisse erstellen und verwenden](/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)“.
If you don't provide the `repository` key in your *package.json* file, then {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the `name` field of the *package.json* file. For example, a package named `@my-org/test` is published to the `my-org/test` {% data variables.product.prodname_dotcom %} repository.
However, if you do provide the `repository` key, then the repository in that key is used as the destination npm registry for {% data variables.product.prodname_registry %}. For example, publishing the below *package.json* results in a package named `my-amazing-package` published to the `octocat/my-other-repo` {% data variables.product.prodname_dotcom %} repository.
```json
{
"name": "@octocat/my-amazing-package",
"repository": {
"type": "git",
"url": "https://github.com/octocat/my-other-repo.git"
},
```
#### Authenticating to the destination repository
To authenticate to the {% data variables.product.prodname_registry %} registry in your workflow, you can use the `GITHUB_TOKEN` from your repository. It is created automatically and has _read_ and _write_ permissions for packages in the repository where the workflow runs. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow)."
If you want to publish your package to a different repository, you must use a personal access token (PAT) that has permission to write to packages in the destination repository. For more information, see "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)" and "[Encrypted secrets](/actions/reference/encrypted-secrets)."
#### Example workflow
Dieses Beispiel speichert das Geheimnis `GITHUB_TOKEN` in der Umgebungsvariablen `NODE_AUTH_TOKEN`. Wenn die Aktion `setup-node` eine Datei *.npmrc* erzeugt, referenziert sie das Token aus der Umgebungsvariable `NODE_AUTH_TOKEN`.

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

@ -11,6 +11,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -11,6 +11,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'overview'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,11 +7,16 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}
{% data reusables.actions.enterprise-github-hosted-runners %}
Du kannst einen selbst-gehosteten Runner zu {{ site.data.variables.product.prodname_actions }} hinzufügen.
If you are an organization or enterprise administrator, you might want to add your self-hosted runners at the organization or enterprise level. This approach makes the runner available to multiple repositories in your organization or enterprise, and also lets you to manage your runners in one place.
For information on supported operating systems for self-hosted runners, or using self-hosted runners with a proxy server, see "[About self-hosted runners](/github/automating-your-workflow-with-github-actions/about-self-hosted-runners)."
{% warning %}
@ -44,6 +49,8 @@ Du kannst selbst-gehostete Runner auf Organisationsebene hinzufügen, wo sie ver
{% data reusables.github-actions.self-hosted-runner-configure %}
{% data reusables.github-actions.self-hosted-runner-check-installation-success %}
{% data reusables.github-actions.self-hosted-runner-public-repo-access %}
### Adding a self-hosted runner to an enterprise
You can add self-hosted runners to an enterprise, where they can be assigned to multiple organizations. The organization admins are then able to control which repositories can use it.
@ -62,3 +69,13 @@ To add a self-hosted runner at the enterprise level of
1. Click **Add new**, then click **New runner**. New runners are assigned to the default group. You can modify the runner's group after you've registered the runner. For more information, see "[Managing access to self-hosted runners](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)."
{% data reusables.github-actions.self-hosted-runner-configure %}
{% data reusables.github-actions.self-hosted-runner-check-installation-success %}
{% data reusables.github-actions.self-hosted-runner-public-repo-access %}
#### Making enterprise runners available to repositories
By default, runners in an enterprise's "Default" self-hosted runner group are available to all organizations in the enterprise, but are not available to all repositories in each organization.
To make an enterprise-level self-hosted runner group available to an organization repository, you might need to change the organization's inherited settings for the runner group to make the runner available to repositories in the organization.
For more information on changing runner group access settings, see "[Managing access to self-hosted runners using groups](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."

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

@ -6,6 +6,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
defaultPlatform: linux
---

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

@ -6,6 +6,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -8,6 +8,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
defaultPlatform: linux
---

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -6,6 +6,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -4,6 +4,7 @@ intro: Mit Labels kannst Du Deine selbst-gehosteten Runner nach ihren Eigenschaf
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -5,6 +5,7 @@ intro: '{% data variables.product.prodname_actions %} are designed to help you b
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'overview'
---
{% data reusables.actions.enterprise-beta %}

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

@ -10,6 +10,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'how_to'
---
{% data reusables.actions.enterprise-beta %}
@ -76,7 +77,7 @@ Schritte:
#### Using branches
Referring to a specific branch means that the action will always use the latest updates on the target branch, but can create problems if those updates include breaking changes. This example targets a branch named `@main`:
Specifying a target branch for the action means it will always run the version currently on that branch. This approach can create problems if an update to the branch includes breaking changes. This example targets a branch named `@main`:
```yaml
steps:

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

@ -9,6 +9,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'overview'
---
{% data reusables.actions.enterprise-beta %}

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

@ -5,6 +5,7 @@ intro: 'This guide shows you how to use the advanced features of {% data variabl
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'how_to'
---
{% data reusables.actions.enterprise-beta %}
@ -154,6 +155,15 @@ For more information, see ["Using labels with self-hosted runners](/actions/hos
You can configure environments with protection rules and secrets. Each job in a workflow can reference a single environment. Any protection rules configured for the environment must pass before a job referencing the environment is sent to a runner. For more information, see "[Environments](/actions/reference/environments)."
{% endif %}
### Verwenden einer Workflowvorlage
{% data reusables.actions.workflow-template-overview %}
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.actions-tab %}
1. Wenn Ihr Repository bereits über vorhandene Workflows verfügt: Klicken Sie in der linken oberen Ecke auf **Neuer Workflow**. ![Erstelle einen neuen Workflow](/assets/images/help/repository/actions-new-workflow.png)
1. Klicke unter dem Namen der zu verwendenden Vorlage auf **Set up this workflow** (Workflow einrichten). ![Einrichten dieses Workflows](/assets/images/help/settings/actions-create-starter-workflow.png)
### Nächste Schritte:
To continue learning about {% data variables.product.prodname_actions %}, see "[Sharing workflows with your organization](/actions/learn-github-actions/sharing-workflows-with-your-organization)."

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

@ -6,6 +6,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}
@ -324,4 +325,3 @@ jobs:
</table>
Aktionen zur Verwendung in Deinem Workflow findest du entweder auf dem [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace?type=actions) oder Du kannst eigene Aktionen erstellen. For more information, see "[Creating actions](/actions/creating-actions)."

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

@ -6,6 +6,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -4,6 +4,7 @@ intro: '{% data variables.product.prodname_actions %} and GitLab CI/CD share sev
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}

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

@ -6,6 +6,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
{% data reusables.actions.enterprise-beta %}
@ -166,7 +167,7 @@ Jenkins-Pipeline
maven-build:
env:
MAVEN_PATH: '/usr/local/maven'
```
</td>
@ -209,7 +210,7 @@ Jenkins-Pipeline
needs: job1
job3:
needs: [job1, job2]
```
</td>

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

@ -6,6 +6,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'tutorial'
---
### Einführung

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

@ -8,6 +8,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'overview'
---
{% data reusables.actions.enterprise-beta %}

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

@ -7,6 +7,7 @@ redirect_from:
versions:
free-pro-team: '*'
enterprise-server: '>=2.22'
type: 'how_to'
---
{% data reusables.actions.enterprise-beta %}
@ -31,11 +32,11 @@ In diesem Verfahren wird veranschaulicht, wie eine Workflowvorlage und eine Meta
Diese Datei mit dem Namen `octo-organization-ci.yml` veranschaulicht beispielsweise einen grundlegenden Workflow.
```yaml
Name: Octo Organization CI
name: Octo Organization CI
on:
push:
branch: [ $default-branch ]
branches: [ $default-branch ]
pull_request:
branches: [ $default-branch ]
@ -44,10 +45,10 @@ In diesem Verfahren wird veranschaulicht, wie eine Workflowvorlage und eine Meta
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v2
- name: Run a one-line script
run: echo Hello from Octo Organization
- name: Run a one-line script
run: echo Hello from Octo Organization
```
1. Erstellen Sie eine Metadatendatei im `Workflow-Vorlagen` Verzeichnis. Die Metadatendatei muss denselben Namen wie die Workflowdatei haben, aber anstelle der Erweiterung `.yml` muss sie mit `.properties.json`angehängt werden. Diese Datei mit dem Namen `octo-organization-ci.properties.json enthält` beispielsweise die Metadaten für eine Workflowdatei mit dem Namen `octo-organization-ci.yml`:
```yaml
@ -75,7 +76,7 @@ Um eine weitere Workflowvorlage hinzuzufügen, fügen Sie Ihre Dateien `Workflow
![Workflow-Vorlagendateien](/assets/images/help/images/workflow-template-files.png)
### Verwenden einer Workflowvorlage
### Using a workflow template from your organization
In diesem Verfahren wird veranschaulicht, wie ein Mitglied Ihrer Organisation eine Workflowvorlage finden und verwenden kann, um einen neuen Workflow zu erstellen. Die Workflowvorlagen einer Organisation können von jedem Benutzer verwendet werden, der Mitglied der Organisation ist.

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

@ -66,9 +66,9 @@ Committing the workflow file in your repository triggers the `push` event and ru
{% endif %}
{% data reusables.repositories.view-failed-job-results-superlinter %}
### More starter workflows
### More workflow templates
{% data variables.product.prodname_dotcom %} provides preconfigured workflow templates that you can start from to automate or create a continuous integration workflows. You can browse the full list of workflow templates in the {% if currentVersion == "free-pro-team@latest" %}[actions/starter-workflows](https://github.com/actions/starter-workflows) repository{% else %} `actions/starter-workflows` repository on {% data variables.product.product_location %}{% endif %}.
{% data reusables.actions.workflow-template-overview %}
### Nächste Schritte:
@ -120,7 +120,7 @@ Printing "Hello, World!" is a great way to explore the basic set up and syntax o
{% data reusables.repositories.navigate-to-repo %}
{% data reusables.repositories.actions-tab %}
1. In the left sidebar, click the workfow you want to run.
1. In the left sidebar, click the workflow you want to run.
![Select say hello job](/assets/images/help/repository/say-hello-job.png)
1. On the right, click the **Run workflow** drop-down and click **Run workflow**. Optionally, you can enter a custom message into the "Person to greet" input before running the workflow.
![Trigger the manual workflow](/assets/images/help/repository/manual-workflow-trigger.png)
@ -131,9 +131,9 @@ Printing "Hello, World!" is a great way to explore the basic set up and syntax o
1. In the workflow logs, expand the 'Run echo "Hello World!"' section.
![Workflow detail](/assets/images/help/repository/workflow-log-listing.png)
### More starter workflows
### More workflow templates
{% data variables.product.prodname_dotcom %} provides preconfigured workflow templates that you can start from to automate or create a continuous integration workflows. You can browse the full list of workflow templates in the {% if currentVersion == "free-pro-team@latest" %}[actions/starter-workflows](https://github.com/actions/starter-workflows) repository{% else %} `actions/starter-workflows` repository on {% data variables.product.product_location %}{% endif %}.
{% data reusables.actions.workflow-template-overview %}
### Next steps

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

@ -75,9 +75,13 @@ Bei der Eigenschaftsdereferenzierungs-Syntax muss der Eigenschaftsname
- mit `a-Z` oder `_` beginnen,
- mit `a-Z`, `0-9`, `-` oder `_` weitergehen.
#### Determining when to use contexts
{% data reusables.github-actions.using-context-or-environment-variables %}
#### `github`-Kontext
Der `github`-Kontext enthält Informationen zum Workflow-Lauf und zu dem Ereignis, das den Lauf ausgelöst hat. Sie können die meisten `github`-Kontextdaten in Umgebungsvariablen lesen. Weitere Informationen über Umgebungsvariablen findest Du unter „[Umgebungsvariablen verwenden](/actions/automating-your-workflow-with-github-actions/using-environment-variables)“.
Der `github`-Kontext enthält Informationen zum Workflow-Lauf und zu dem Ereignis, das den Lauf ausgelöst hat. Du kannst die meisten `github`-Kontextdaten in Umgebungsvariablen lesen. Weitere Informationen über Umgebungsvariablen findest Du unter „[Umgebungsvariablen verwenden](/actions/automating-your-workflow-with-github-actions/using-environment-variables)“.
{% data reusables.github-actions.github-context-warning %}
@ -107,15 +111,14 @@ Der `github`-Kontext enthält Informationen zum Workflow-Lauf und zu dem Ereigni
Der `env`-Kontext enthält Umgebungsvariablen, die in einem Workflow, Job oder Schritt gesetzt wurden. Weitere Informationen über das Setzen von Umgebungsvariablen in Deinem Workflow findest Du unter „[Workflow-Syntax für {% data variables.product.prodname_actions %}](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#env)“.
Mit der Syntax für den `env`-Kontext kannst Du den Wert einer Umgebungsvariable in Deiner Workflow-Datei verwenden. Wenn Du den Wert einer Umgebungsvariable innerhalb eines Runners verwenden willst, dann verwende die normale Methode des Runner-Betriebssystems zum Lesen von Umgebungsvariablen.
Mit der Syntax für den `env`-Kontext kannst Du den Wert einer Umgebungsvariable in Deiner Workflow-Datei verwenden. You can use the `env` context in the value of any key in a **step** except for the `id` and `uses` keys. Weitere Informationen zur Syntax für Schritte findest Du unter „[Workflow-Syntax für {% data variables.product.prodname_actions %}](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idsteps)“.
Du kannst den `env`-Kontext nur im Wert der Schlüssel `with` und `name` verwenden oder in der `if`-Bedingung eines Schritts. Weitere Informationen zur Syntax für Schritte findest Du unter „[Workflow-Syntax für {% data variables.product.prodname_actions %}](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#jobsjob_idsteps)“.
Wenn Du den Wert einer Umgebungsvariable innerhalb eines Runners verwenden willst, dann verwende die normale Methode des Runner-Betriebssystems zum Lesen von Umgebungsvariablen.
| Name der Eigenschaft | Typ | Beschreibung |
| ---------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `env` | `Objekt` | Dieser Kontext ändert sich bei jedem Schritt in einem Auftrag. Du kannst bei jedem Schritt in einem Auftrag auf diesen Kontext zugreifen. |
| `env.<env name>` | `string` | Der Wert einer bestimmten Umgebungsvariable. |
| `env.<env_name>` | `string` | Der Wert einer bestimmten Umgebungsvariable. |
#### `job`-Kontext
@ -135,7 +138,7 @@ Der `job`-Kontext enthält Informationen zum gerade ausgeführten Auftrag.
#### `steps`-Kontext
Der `steps`-Kontext enthält Informationen zu den Schritten im aktuellen Auftrag, die bereits ausgeführt wurden.
Der `steps`-Kontext enthält Informationen zu den Schritten im aktuellen Job, die bereits ausgeführt wurden.
| Name der Eigenschaft | Typ | Beschreibung |
| --------------------------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
@ -168,7 +171,7 @@ Der `needs`-Kontext enthält Ausgaben von allen Jobs, die als Abhängigkeit des
#### Beispiel für die Ausgabe von Kontextinformationen in der Protokolldatei
Mit dem folgenden Beispiel einer Workflow-Datei können Sie die Informationen prüfen, auf die in den einzelnen Kontexten zugegriffen werden kann.
Mit dem folgenden Beispiel einer Workflow-Datei kannst Du die Informationen einsehen, auf die in den einzelnen Kontexten zugegriffen werden kann.
{% data reusables.github-actions.github-context-warning %}
@ -269,7 +272,7 @@ env:
### Funktionen
{% data variables.product.prodname_dotcom %} bietet integrierte Funktionen, die Sie in Ausdrücken verwenden können. Manche Funktionen übergeben Werte an einen String, um Vergleiche durchzuführen. {% data variables.product.prodname_dotcom %} übergibt Datentypen anhand der folgenden Umwandlungen an einen String:
{% data variables.product.prodname_dotcom %} bietet integrierte Funktionen, die Du in Ausdrücken verwenden kannst. Manche Funktionen verwandeln Werte an einen String, um Vergleiche durchzuführen. {% data variables.product.prodname_dotcom %} verwandelt Daten verschiedener Typen folgendermaßen in einen String:
| Typ | Ergebnis |
| ------- | ------------------------------------------------- |
@ -283,7 +286,7 @@ env:
`contains( search, item )`
Gibt `true` zurück, wenn der `item` in `search` enthalten ist. Wenn `search` ein Array ist, gibt diese Funktion `true` zurück, wenn der `item` ein Element im Array ist. Wenn `search` ein String ist, gibt diese Funktion `true` zurück, wenn der `item` ein Teilstring von `search` ist. Bei dieser Funktion wird die Groß- und Kleinschreibung nicht berücksichtigt. Übergibt Werte an einen String.
Gibt `true` zurück, wenn der `item` in `search` enthalten ist. Wenn `search` ein Array ist, gibt diese Funktion `true` zurück, wenn der `item` ein Element im Array ist. Wenn `search` ein String ist, gibt diese Funktion `true` zurück, wenn der `item` ein Teilstring von `search` ist. Bei dieser Funktion wird die Groß- und Kleinschreibung nicht berücksichtigt. Wandelt Werte in einen String um.
##### Beispiel mit einem Array
@ -297,7 +300,7 @@ Gibt `true` zurück, wenn der `item` in `search` enthalten ist. Wenn `search` ei
`startsWith( searchString, searchValue )`
Gibt `true` zurück, wenn der `searchString` mit `searchValue` beginnt. Bei dieser Funktion wird die Groß- und Kleinschreibung nicht berücksichtigt. Übergibt Werte an einen String.
Gibt `true` zurück, wenn der `searchString` mit `searchValue` beginnt. Bei dieser Funktion wird die Groß- und Kleinschreibung nicht berücksichtigt. Wandelt Werte in einen String um.
##### Beispiel
@ -307,7 +310,7 @@ Gibt `true` zurück, wenn der `searchString` mit `searchValue` beginnt. Bei dies
`endsWith( searchString, searchValue )`
Gibt `true` zurück, wenn der `searchString` mit `searchValue` endet. Bei dieser Funktion wird die Groß- und Kleinschreibung nicht berücksichtigt. Übergibt Werte an einen String.
Gibt `true` zurück, wenn der `searchString` mit `searchValue` endet. Bei dieser Funktion wird die Groß- und Kleinschreibung nicht berücksichtigt. Wandelt Werte in einen String um.
##### Beispiel
@ -317,7 +320,7 @@ Gibt `true` zurück, wenn der `searchString` mit `searchValue` endet. Bei dieser
`format( string, replaceValue0, replaceValue1, ..., replaceValueN)`
Ersetzt die Werte im `string` durch die Variable `replaceValueN`. Variablen im `string` werden mit der `{N}`-Syntax festgelegt, wobei `N` eine Ganzzahl ist. Sie müssen mindestens einen `replaceValue` und `string` festlegen. Sie können eine unbegrenzte Anzahl an Variablen (`replaceValueN`) verwenden. Maskieren Sie geschweifte Klammern mit doppelten Klammern.
Ersetzt die Werte im `string` durch die Variable `replaceValueN`. Variablen im `string` werden mit der `{N}`-Syntax festgelegt, wobei `N` eine Ganzzahl ist. Du musst mindestens einen `replaceValue` und `string` festlegen. Du kannst eine unbegrenzte Anzahl an Variablen (`replaceValueN`) verwenden. Maskiere geschweifte Klammern mit doppelten Klammern.
##### Beispiel
@ -339,7 +342,7 @@ format('{{Hello {0} {1} {2}!}}', 'Mona', 'the', 'Octocat')
`join( array, optionalSeparator )`
Der Wert für `array` kann ein Array oder ein String sein. Alle Werte im `array` werden in einem String zusammengeführt. Wenn Du `optionalSeparator` angibst, wird er zwischen den verketteten Werten eingefügt. Andernfalls wird der Standard-Trennzeichen `,` verwendet. Übergibt Werte an einen String.
Der Wert für `array` kann ein Array oder ein String sein. Alle Werte im `array` werden in einem String zusammengeführt. Wenn Du `optionalSeparator` angibst, wird er zwischen den verketteten Werten eingefügt. Andernfalls wird der Standard-Trennzeichen `,` verwendet. Wandelt Werte in einen String um.
##### Beispiel
@ -349,7 +352,7 @@ Der Wert für `array` kann ein Array oder ein String sein. Alle Werte im `array`
`toJSON(value)`
Gibt eine Pretty-Print-JSON-Darstellung von `value` zurück. Mit dieser Funktion können Sie die in Kontexten enthaltenen Informationen debuggen.
Gibt eine Pretty-Print-JSON-Darstellung von `value` zurück. Diese Funktion hilft Dir bei der Fehlersuche in den Informationen, die in Kontexten enthalten sind.
##### Beispiel
@ -409,7 +412,7 @@ Creates a hash for any `package-lock.json` and `Gemfile.lock` files in the repos
### Funktionen zur Prüfung des Job-Status
Sie können die nachfolgenden Statuscheckfunktionen als Ausdrücke in `if`-Bedingungen verwenden. Wenn der `if`-Ausdruck keine Statusfunktion enthält, wird automatisch das Ergebnis `success()` zurückgegeben. Weitere Informationen zu `if`-Anweisungen finden Sie unter „[Workflow-Syntax für GitHub Actions](/articles/workflow-syntax-for-github-actions/#jobsjob_idif)“.
Du kannst die nachfolgenden Funktionen zum Statuscheck als Ausdrücke in `if`-Bedingungen verwenden. Wenn Dein `if`-Ausdruck keine Statusfunktion enthält, wird automatisch das Ergebnis `success()` zurückgegeben. Weitere Informationen zu `if`-Anweisungen finden Sie unter „[Workflow-Syntax für GitHub Actions](/articles/workflow-syntax-for-github-actions/#jobsjob_idif)“.
#### success (Erfolg)
@ -426,7 +429,7 @@ steps:
#### always
Gibt immer `true`zurück, sogar bei Abbruch. Ein Auftrag oder Schritt wird nicht ausgeführt, wenn ein kritischer Fehler die Ausführung der Aufgabe verhindert. Beispiel: Quellen konnten nicht abgerufen werden.
Gibt immer `true`zurück, sogar bei Abbruch. Ein Job oder Schritt wird nicht ausgeführt, wenn ein kritischer Fehler die Ausführung der Aufgabe verhindert. Beispiel: Quellen konnten nicht abgerufen werden.
##### Beispiel
@ -459,7 +462,7 @@ steps:
### Objektfilter
Mit der `*`-Syntax können Sie einen Filter anwenden und passende Elemente in einer Sammlung auswählen.
Mit der Syntax `*` kannst Du einen Filter anwenden und passende Elemente in einer Sammlung auswählen.
Betrachten Sie beispielsweise das Objekt-Array `fruits`.

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

@ -57,6 +57,16 @@ Es wird dringend empfohlen, dass Aktionen Umgebungsvariablen verwenden, um auf d
| `GITHUB_API_URL` | Gibt die API-URL zurück. For example: `https://api.github.com`. |
| `GITHUB_GRAPHQL_URL` | Gibt die GraphQL-API-URL zurück. For example: `https://api.github.com/graphql`. |
{% tip %}
**Note:** If you need to use a workflow run's URL from within a job, you can combine these environment variables: `$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID`
{% endtip %}
#### Determining when to use default environment variables or contexts
{% data reusables.github-actions.using-context-or-environment-variables %}
### Namens-Konventionen für Umgebungsvariablen
{% note %}

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

@ -80,6 +80,8 @@ In den fünf Feldern stehen die folgenden Operatoren zur Auswahl:
Mit [crontab guru](https://crontab.guru/) können Sie die Cron-Syntax erzeugen und den Ausführungszeitpunkt bestätigen. Als Einstiegshilfe steht eine Liste mit [crontab-guru-Beispielen](https://crontab.guru/examples.html) bereit.
Notifications for scheduled workflows are sent to the user who last modified the cron syntax in the workflow file. For more information, please see "[Notifications for workflow runs](/actions/guides/about-continuous-integration#notifications-for-workflow-runs)."
### Manual events
You can manually trigger workflow runs. To trigger specific workflows in a repository, use the `workflow_dispatch` event. To trigger more than one workflow in a repository and create custom events and event types, use the `repository_dispatch` event.
@ -145,7 +147,7 @@ jobs:
Mit der {% data variables.product.product_name %}-API können Sie das Webhook-Ereignis [`repository_dispatch`](/webhooks/event-payloads/#repository_dispatch) auslösen, wenn ein Workflow für eine Aktivität ausgelöst werden soll, die außerhalb von {% data variables.product.prodname_dotcom %} abläuft. For more information, see "[Create a repository dispatch event](/rest/reference/repos#create-a-repository-dispatch-event)."
Soll das benutzerdefinierte Webhook-Ereignis `repository_dispatch` ausgelöst werden, senden Sie eine `POST`-Anfrage an einen {% data variables.product.product_name %}-API-Endpunkt, und geben Sie den Namen für einen `event_type` als Beschreibung für den Aktivitätstyp an. Soll ein Workflow-Lauf ausgelöst werden, konfigurieren Sie außerdem den Workflow für die Verwendung des Ereignisses `repository_dispatch`.
Soll das benutzerdefinierte Webhook-Ereignis `repository_dispatch` ausgelöst werden, senden Sie eine `POST`-Anfrage an einen {% data variables.product.product_name %}-API-Endpunkt, und geben Sie den Namen für einen `event_type` als Beschreibung für den Aktivitätstyp an. Soll ein Workflow-Lauf ausgelöst werden, konfigurierest Du außerdem Deinen Workflow für die Verwendung des Ereignisses `repository_dispatch`.
##### Beispiel
@ -364,7 +366,7 @@ Führt den Workflow aus, wenn das Ereignis `issues` eintritt. {% data reusables.
{% data reusables.developer-site.limit_workflow_to_activity_types %}
Du kannst einen Workflow beispielsweise ausführen, wenn ein Problem geöffnet (`opened`) oder bearbeitet (`edited`) wurde oder wenn dafür ein Meilenstein gesetzt wurde (`milestoned`).
Sie können einen Workflow beispielsweise ausführen, wenn ein Issue geöffnet (`opened`) oder bearbeitet (`edited`) oder wenn ein Meilenstein gesetzt (`milestoned`) wurde.
```yaml
on:
@ -394,7 +396,7 @@ on:
#### `Meilensteine`
Führt Deinen Workflow aus, wenn das Ereignis `milestone` eintritt. {% data reusables.developer-site.multiple_activity_types %} For information about the REST API, see "[Milestones](/rest/reference/issues#milestones)."
Führt den Workflow aus, wenn das Ereignis `milestone` eintritt. {% data reusables.developer-site.multiple_activity_types %} For information about the REST API, see "[Milestones](/rest/reference/issues#milestones)."
{% data reusables.github-actions.branch-requirement %}
@ -451,7 +453,7 @@ on:
#### `project_card`
Führt den Workflow aus, wenn das Ereignis `project_card` eintritt. {% data reusables.developer-site.multiple_activity_types %} For information about the REST API, see "[Project cards](/rest/reference/projects#cards)."
Führt den Workflow aus, wenn das Ereignis `project_ticket` eintritt. {% data reusables.developer-site.multiple_activity_types %} For information about the REST API, see "[Project cards](/rest/reference/projects#cards)."
{% data reusables.github-actions.branch-requirement %}
@ -471,7 +473,7 @@ on:
#### `project_column`
Führt Deinen Workflow aus, wenn das Ereignis `project_column` eintritt. {% data reusables.developer-site.multiple_activity_types %} For information about the REST API, see "[Project columns](/rest/reference/projects#columns)."
Führt den Workflow aus, wenn das Ereignis `project_column` eintritt. {% data reusables.developer-site.multiple_activity_types %} For information about the REST API, see "[Project columns](/rest/reference/projects#columns)."
{% data reusables.github-actions.branch-requirement %}
@ -481,7 +483,7 @@ Führt Deinen Workflow aus, wenn das Ereignis `project_column` eintritt. {% data
{% data reusables.developer-site.limit_workflow_to_activity_types %}
Du kannst einen Workflow beispielsweise ausführen, wenn eine Projektspalte erstellt (`created`) oder gelöscht (`deleted`) wurde.
Sie können einen Workflow beispielsweise ausführen, wenn eine Projektspalte erstellt (`created`) oder gelöscht (`deleted`) wurde.
```yaml
on:
@ -491,7 +493,7 @@ on:
#### `public`
Führt Deinen Workflow aus, wenn ein Benutzer ein privates Repository öffentlich macht, wodurch das Ereignis `public` ausgelöst wird. For information about the REST API, see "[Edit repositories](/rest/reference/repos#edit)."
Führt den Workflow aus, wenn ein Benutzer ein privates Repository öffentlich macht, wodurch das Ereignis `public` ausgelöst wird. For information about the REST API, see "[Edit repositories](/rest/reference/repos#edit)."
{% data reusables.github-actions.branch-requirement %}
@ -499,7 +501,7 @@ Führt Deinen Workflow aus, wenn ein Benutzer ein privates Repository öffentlic
| -------------------------------------------- | --------------- | --------------------------------- | --------------- |
| [`public`](/webhooks/event-payloads/#public) | – | Letzter Commit im Standard-Branch | Standard-Branch |
Du kannst einen Workflow beispielsweise ausführen, wenn das Ereignis `public` eintritt.
Sie können einen Workflow beispielsweise ausführen, wenn das Ereignis `public` eintritt.
```yaml
on:
@ -508,11 +510,11 @@ on:
#### `pull_request`
Führt Deinen Workflow aus, wenn das Ereignis `pull_request` eintritt. {% data reusables.developer-site.multiple_activity_types %} For information about the REST API, see "[Pull requests](/rest/reference/pulls)."
Führt den Workflow aus, wenn das Ereignis `pull_request` eintritt. {% data reusables.developer-site.multiple_activity_types %} For information about the REST API, see "[Pull requests](/rest/reference/pulls)."
{% note %}
**Note:** By default, a workflow only runs when a `pull_request`'s activity type is `opened`, `synchronize`, or `reopened`. Sollen Workflows für weitere Aktivitätstypen ausgelöst werden, verwende das Schlüsselwort `types`.
**Hinweis:** Standardmäßig wird ein Workflow nur dann ausgeführt, wenn der `pull_request` den Aktivitätstyp `opened`, `synchronize` oder `reopened` aufweist. Sollen Workflows für weitere Aktivitätstypen ausgelöst werden, geben Sie das Stichwort `types` an.
{% endnote %}
@ -588,12 +590,13 @@ This event runs in the context of the base of the pull request, rather than in t
| -------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- | -------------- |
| [`pull_request`](/webhooks/event-payloads/#pull_request) | - `assigned`<br/>- `unassigned`<br/>- `labeled`<br/>- `unlabeled`<br/>- `opened`<br/>- `edited`<br/>- `closed`<br/>- `reopened`<br/>- `synchronize`<br/>- `ready_for_review`<br/>- `locked`<br/>- `unlocked` <br/>- `review_requested` <br/>- `review_request_removed` | Last commit on the PR base branch | PR base branch |
By default, a workflow only runs when a `pull_request_target`'s activity type is `opened`, `synchronize`, or `reopened`. Sollen Workflows für weitere Aktivitätstypen ausgelöst werden, verwende das Schlüsselwort `types`. Weitere Informationen findest Du unter „[Workflow-Syntax für {% data variables.product.prodname_actions %}](/articles/workflow-syntax-for-github-actions#onevent_nametypes)“.
By default, a workflow only runs when a `pull_request_target`'s activity type is `opened`, `synchronize`, or `reopened`. Sollen Workflows für weitere Aktivitätstypen ausgelöst werden, geben Sie das Stichwort `types` an. Weitere Informationen findest Du unter „[Workflow-Syntax für {% data variables.product.prodname_actions %}](/articles/workflow-syntax-for-github-actions#onevent_nametypes)“.
Du kannst einen Workflow beispielsweise dann ausführen, wenn ein Pull Request zugewiesen (`assigned`), geöffnet (`opened`), synchronisiert (`synchronize`) oder erneut geöffnet (`reopened`) wurde.
```yaml
on: pull_request_target
on:
pull_request_target:
types: [assigned, opened, synchronize, reopened]
```

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

@ -83,44 +83,11 @@ Wenn Sie ein bestimmtes Tool anfordern möchten, öffnen Sie bitte einen Issue u
{% endnote %}
Windows- und Ubuntu-Runner werden in Azure gehostet und haben die gleichen IP-Adressbereiche wie Azure-Rechenzentren. Derzeit befinden sich alle {% data variables.product.prodname_dotcom %}-gehosteten Windows- und Ubuntu-Runner in den folgenden Azure-Regionen:
Windows and Ubuntu runners are hosted in Azure and subsequently have the same IP address ranges as the Azure datacenters. macOS runners are hosted in {% data variables.product.prodname_dotcom %}'s own macOS cloud.
- Ost-USA (`eastus`)
- Ost-USA 2 (`eastus`)
- West-US 2 (`westus2`)
- Zentral-USA (`centralus`)
- Süd-Zentral-USA (`southcentralus`)
To get a list of IP address ranges that {% data variables.product.prodname_actions %} uses for {% data variables.product.prodname_dotcom %}-hosted runners, you can use the {% data variables.product.prodname_dotcom %} REST API . For more information, see the `actions` key in the response of the "[Get GitHub meta information](/rest/reference/meta#get-github-meta-information)" endpoint. You can use this list of IP addresses if you require an allow-list to prevent unauthorized access to your internal resources.
Microsoft aktualisiert die Azure-IP-Adressbereiche wöchentlich in einer JSON-Datei. Diese können Sie auf der Website [Azure IP Ranges and Service Tags - Public Cloud](https://www.microsoft.com/en-us/download/details.aspx?id=56519) herunterladen. Sie können diesen IP-Adressbereich verwenden, falls Sie eine Positivliste vorschreiben, um den nicht autorisierten Zugriff auf Ihre internen Ressourcen zu verhindern.
Die JSON-Datei enthält einen Array mit der Bezeichnung `values`. Innerhalb dieses Arrays findest Du die unterstützten IP-Adressen in einem Objekt mit `name` und `id` der Azure-Region, z.B. `"AzureCloud.eastus2"`.
Die unterstützten IP-Adressbereiche befinden sich im Objekt `"addressPrefixes"`. Dies ist ein komprimiertes Beispiel der JSON-Datei.
```json
{
"changeNumber": 84,
"cloud": "Public",
"values": [
{
"name": "AzureCloud.eastus2",
"id": "AzureCloud.eastus2",
"properties": {
"changeNumber": 33,
"region": "eastus2",
"platform": "Azure",
"systemService": "",
"addressPrefixes": [
"13.68.0.0/17",
"13.77.64.0/18",
"13.104.147.0/25",
...
]
}
}
]
}
```
The list of {% data variables.product.prodname_actions %} IP addresses returned by the API is updated once a week.
### File systems

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

@ -187,7 +187,7 @@ Weitere Informationen zur Cron-Syntax findest Du unter „[Ereignisse, die Workf
### `env`
Eine `map` mit Umgebungsvariablen, die für alle Jobs und Schritte im Workflow verfügbar sind. Darüber hinaus kannst Du auch Umgebungsvariablen festlegen, die ausschließlich für einen Job oder Schritt bereitstehen. For more information, see [`jobs.<job_id>.env`](#jobsjob_idenv) and [`jobs.<job_id>.steps[*].env`](#jobsjob_idstepsenv).
A `map` of environment variables that are available to the steps of all jobs in the workflow. You can also set environment variables that are only available to the steps of a single job or to a single step. For more information, see [`jobs.<job_id>.env`](#jobsjob_idenv) and [`jobs.<job_id>.steps[*].env`](#jobsjob_idstepsenv).
{% data reusables.repositories.actions-env-var-note %}
@ -639,14 +639,15 @@ Mit dem Schlüsselwort`working-directory` gibst Du das Arbeitsverzeichnis an, in
Du kannst die Einstellungen zur Standard-Shell im Betriebssystem des Läufers mit dem Schlüsselwort `shell` überschreiben. Sie können die integrierten `shell`-Stichwörter verwenden oder eine benutzerdefinierte Reihe von Shell-Optionen definieren.
| Unterstützte Plattform | Parameter `shell` | Beschreibung | Intern ausgeführter Befehl |
| ---------------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| Alle | `bash` | Die standardmäßige Shell für alle Plattformen außer Windows mit einem Fallback zu `sh`. Wenn eine Bash-Shell für Windows angegeben wird, wird die in Git für Windows enthaltene Bash-Shell verwendet. | `bash --noprofile --norc -eo pipefail {0}` |
| Alle | `pwsh` | Der PowerShell Core. {% data variables.product.prodname_dotcom %} hängt die Erweiterung `.ps1` an Deinen Skriptnamen an. | `pwsh -command ". '{0}'"` |
| Alle | `python` | Führt den Befehl Python aus. | `python {0}` |
| Linux / macOS | `sh` | Das Fallback-Verhalten für alle Betriebssystem-Plattformen außer Windows, falls keine Shell angegeben ist und `bash` nicht im Pfad gefunden wird. | `sh -e {0}` |
| Windows | `cmd` | {% data variables.product.prodname_dotcom %} hängt die Erweiterung `.cmd` an Deinen Skriptnamen an und ersetzt `{0}`. | `%ComSpec% /D /E:ON /V:OFF /S /C "CALL "{0}""`. |
| Windows | `powershell` | Dies ist die standardmäßig für Windows verwendete Shell. Die Desktop PowerShell. {% data variables.product.prodname_dotcom %} hängt die Erweiterung `.ps1` an Deinen Skriptnamen an. | `powershell -command ". '{0}'"`. |
| Unterstützte Plattform | Parameter `shell` | Beschreibung | Intern ausgeführter Befehl |
| ---------------------- | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| Alle | `bash` | Die standardmäßige Shell für alle Plattformen außer Windows mit einem Fallback zu `sh`. Wenn eine Bash-Shell für Windows angegeben wird, wird die in Git für Windows enthaltene Bash-Shell verwendet. | `bash --noprofile --norc -eo pipefail {0}` |
| Alle | `pwsh` | Der PowerShell Core. {% data variables.product.prodname_dotcom %} hängt die Erweiterung `.ps1` an Deinen Skriptnamen an. | `pwsh -command ". '{0}'"` |
| Alle | `python` | Führt den Befehl Python aus. | `python {0}` |
| Linux / macOS | `sh` | Das Fallback-Verhalten für alle Betriebssystem-Plattformen außer Windows, falls keine Shell angegeben ist und `bash` nicht im Pfad gefunden wird. | `sh -e {0}` |
| Windows | `cmd` | {% data variables.product.prodname_dotcom %} hängt die Erweiterung `.cmd` an Deinen Skriptnamen an und ersetzt `{0}`. | `%ComSpec% /D /E:ON /V:OFF /S /C "CALL "{0}""`. |
| Windows | `pwsh` | Dies ist die standardmäßig für Windows verwendete Shell. Der PowerShell Core. {% data variables.product.prodname_dotcom %} hängt die Erweiterung `.ps1` an Deinen Skriptnamen an. If your self-hosted Windows runner does not have _PowerShell Core_ installed, then _PowerShell Desktop_ is used instead. | `pwsh -command ". '{0}'"`. |
| Windows | `powershell` | The PowerShell Desktop. {% data variables.product.prodname_dotcom %} hängt die Erweiterung `.ps1` an Deinen Skriptnamen an. | `powershell -command ". '{0}'"`. |
#### Beispiel zur Ausführung eines Skripts mittels Bash
@ -675,6 +676,15 @@ steps:
shell: pwsh
```
#### Example: Using PowerShell Desktop to run a script
```yaml
steps:
- name: Display the path
run: echo ${env:PATH}
shell: powershell
```
#### Beispiel zur Ausführung eines Python-Skripts
```yaml
@ -1149,7 +1159,7 @@ Die Pfad-, Branch- und Tag-Filter können bestimmte Sonderzeichen umfassen.
- `**`: Steht für kein Zeichen oder mehrere beliebige Zeichen.
- `?`: Steht für kein Zeichen oder ein einzelnes Zeichen. Zum Beispiel passt `Oktoc?t` auf `Oktocat`.
- `+`: Matches one or more of the preceding character.
- `[]` Steht für irgend ein Zeichen, das in den Klammern aufgelistet ist oder das in einen in den Klammern enthalten Bereich fällt. Mögliche Bereiche sind ausschließlich `a-z`, `A-Z` und `0-9`. Zum Beispiel entspricht der Bereich`[0-9a-f]` beliebigen Ziffern oder Kleinbuchstaben. Zum Beispiel passt `[CB]at` sowohl zu `Cat` als auch zu `Bat` und `[1-2]00` passt sowohl zu `100` als auch zu `200`.
- `[]` Steht für irgend ein Zeichen, das in den Klammern aufgelistet ist oder das in einen in den Klammern enthalten Bereich fällt. Mögliche Bereiche sind ausschließlich `a-z`, `A-Z` und `0-9`. For example, the range`[0-9a-z]` matches any digit or lowercase letter. Zum Beispiel passt `[CB]at` sowohl zu `Cat` als auch zu `Bat` und `[1-2]00` passt sowohl zu `100` als auch zu `200`.
- `!`: Am Anfang eines Musters stehend negiert es das Muster in sein Gegenteil. Es hat keine besondere Bedeutung, wenn es nicht das erste Zeichen ist.
Die Zeichen `*`, `[` und `!` sind Sonderzeichen in YAML. Wenn ein Muster mit `*`, `[` oder `!` beginnen soll, schließen Sie das Muster in Anführungszeichen ein.
@ -1167,35 +1177,35 @@ Weitere Informationen zur Syntax für Branch-, Tag- und Pfadfilter finden Sie un
#### Muster für den Abgleich von Branches und Tags
| Muster | Beschreibung | Beispiele für Übereinstimmungen |
| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `feature/*` | Das Platzhalterzeichen `*` steht für ein beliebiges Zeichen, nicht jedoch für den Schrägstrich (`/`). | -`feature/my-branch`<br/>-`feature/your-branch` |
| `feature/**` | Das Platzhalterzeichen `**` steht für ein beliebiges Zeichen, also auch für den Schrägstrich (`/`), in Branch- und Tag-Namen. | -`feature/beta-a/my-branch`<br/>-`feature/your-branch`<br/>-`feature/mona/the/octocat` |
| -`main`<br/>-`releases/mona-the-octcat` | Abgleich mit dem exakten Branch- oder Tag-Namen. | -`main`<br/>-`releases/mona-the-octocat` |
| `'*'` | Abgleich mit allen Branch- und Tag-Namen, die keinen Schrägstrich (`/`) enthalten. Das Zeichen `*` ist ein Sonderzeichen in YAML. Wenn ein Muster mit `*` beginnen soll, sind Anführungszeichen erforderlich. | -`main`<br/>-`releases` |
| `'**'` | Abgleich mit allen Branch- und Tag-Namen. Dies ist das Standardverhalten, wenn Sie keinen `branches`- oder `tags`-Filter angeben. | -`all/the/branches`<br/>-`every/tag` |
| `'*feature'` | Das Zeichen `*` ist ein Sonderzeichen in YAML. Wenn ein Muster mit `*` beginnen soll, sind Anführungszeichen erforderlich. | -`mona-feature`<br/>-`feature`<br/>-`ver-10-feature` |
| `v2*` | Abgleich mit Branch- und Tag-Namen, die mit `v2` beginnen. | -`v2`<br/>-`v2.0`<br/>-`v2.9` |
| `v[12].[0-9]+.[0-9]+` | Abgleich mit allen semantischen Versions-Tags mit der Hauptversion 1 oder 2. | -`v1.10.1`<br/>-`v2.0.0` |
| Muster | Beschreibung | Beispiele für Übereinstimmungen |
| ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `feature/*` | Das Platzhalterzeichen `*` steht für ein beliebiges Zeichen, nicht jedoch für den Schrägstrich (`/`). | `feature/my-branch`<br/><br/>`feature/your-branch` |
| `feature/**` | Das Platzhalterzeichen `**` steht für ein beliebiges Zeichen, also auch für den Schrägstrich (`/`), in Branch- und Tag-Namen. | `feature/beta-a/my-branch`<br/><br/>`feature/your-branch`<br/><br/>`feature/mona/the/octocat` |
| `main`<br/><br/>`releases/mona-the-octcat` | Abgleich mit dem exakten Branch- oder Tag-Namen. | `main`<br/><br/>`releases/mona-the-octocat` |
| `'*'` | Abgleich mit allen Branch- und Tag-Namen, die keinen Schrägstrich (`/`) enthalten. Das Zeichen `*` ist ein Sonderzeichen in YAML. Wenn ein Muster mit `*` beginnen soll, sind Anführungszeichen erforderlich. | `main`<br/><br/>`releases` |
| `'**'` | Abgleich mit allen Branch- und Tag-Namen. Dies ist das Standardverhalten, wenn Sie keinen `branches`- oder `tags`-Filter angeben. | `all/the/branches`<br/><br/>`every/tag` |
| `'*feature'` | Das Zeichen `*` ist ein Sonderzeichen in YAML. Wenn ein Muster mit `*` beginnen soll, sind Anführungszeichen erforderlich. | `mona-feature`<br/><br/>`feature`<br/><br/>`ver-10-feature` |
| `v2*` | Abgleich mit Branch- und Tag-Namen, die mit `v2` beginnen. | `v2`<br/><br/>`v2.0`<br/><br/>`v2.9` |
| `v[12].[0-9]+.[0-9]+` | Abgleich mit allen semantischen Versions-Tags mit der Hauptversion 1 oder 2. | `v1.10.1`<br/><br/>`v2.0.0` |
#### Muster für den Abgleich von Dateinamen
Pfadmuster müssen mit dem gesamten Pfad übereinstimmen und mit dem Root des Repositorys beginnen.
| Muster | Beschreibung der Übereinstimmungen | Beispiele für Übereinstimmungen |
| ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------- |
| `'*'` | Das Platzhalterzeichen `*` steht für ein beliebiges Zeichen, nicht jedoch für den Schrägstrich (`/`). Das Zeichen `*` ist ein Sonderzeichen in YAML. Wenn ein Muster mit `*` beginnen soll, sind Anführungszeichen erforderlich. | -`README.md`<br/>-`server.rb` |
| `'*.jsx?'` | Das Zeichen `?` steht für null Instanzen oder genau eine Instanz des vorangegangenen Zeichens. | -`page.js`<br/>-`page.jsx` |
| `'**'` | Das Platzhalterzeichen `**` steht für ein beliebiges Zeichen, auch für den Schrägstrich (`/`). Dies ist das Standardverhalten, wenn Sie keinen `path`-Filter angeben. | -`all/the/files.md` |
| `'*.js'` | Das Platzhalterzeichen `*` steht für ein beliebiges Zeichen, nicht jedoch für den Schrägstrich (`/`). Abgleich mit allen `.js`-Dateien im Root des Repositorys. | -`app.js`<br/>-`index.js` |
| `'**.js'` | Abgleich mit allen `.js`-Dateien im Repository. | -`index.js`<br/>-`js/index.js`<br/>-`src/js/app.js` |
| `docs/*` | Alle Dateien im Root des Verzeichnisses `docs` im Root des Repositorys. | -`docs/README.md`<br/>-`docs/file.txt` |
| `docs/**` | Beliebige Dateien im Verzeichnis `docs` im Root des Repositorys. | -`docs/README.md`<br/>-`docs/mona/octocat.txt` |
| `docs/**/*.md` | Eine Datei mit dem Suffix `.md` an beliebiger Stelle im Verzeichnis `docs`. | -`docs/README.md`<br/>-`docs/mona/hello-world.md`<br/>-`docs/a/markdown/file.md` |
| `'**/docs/**'` | Beliebige Dateien im Verzeichnis `docs` an beliebiger Stelle im Repository. | -`/docs/hello.md`<br/>-`dir/docs/my-file.txt`<br/>-`space/docs/plan/space.doc` |
| `'**/README.md'` | Eine Datei mit dem Namen „README.md“ an beliebiger Stelle im Repository. | -`README.md`<br/>-`js/README.md` |
| `'**/*src/**'` | Eine beliebige Datei in einem Ordner mit dem Suffix `src` an beliebiger Stelle im Repository. | -`a/src/app.js`<br/>-`my-src/code/js/app.js` |
| `'**/*-post.md'` | Eine Datei mit dem Suffix `-post.md` an beliebiger Stelle im Repository. | -`my-post.md`<br/>-`path/their-post.md` |
| `'**/migrate-*.sql'` | Eine Datei mit dem Präfix `migrate-` und dem Suffix `.sql` an beliebiger Stelle im Repository. | -`migrate-10909.sql`<br/>-`db/migrate-v1.0.sql`<br/>-`db/sept/migrate-v1.sql` |
| -`*.md`<br/>-`!README.md` | Ein Ausrufezeichen (`!`) vor einem Muster negiert das Muster. Wenn eine Datei sowohl mit einem Muster übereinstimmt als auch mit einem negativen Muster, das später in der Datei definiert ist, wird die Datei nicht berücksichtigt. | -`hello.md`<br/>_Kein Abgleich mit_<br/>-`README.md`<br/>-`docs/hello.md` |
| -`*.md`<br/>-`!README.md`<br/>-`README*` | Die Muster werden sequenziell geprüft. Wenn ein Muster ein vorangegangenes Muster negiert, werden die Dateipfade wieder berücksichtigt. | -`hello.md`<br/>-`README.md`<br/>-`README.doc` |
| Muster | Beschreibung der Übereinstimmungen | Beispiele für Übereinstimmungen |
| ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
| `'*'` | Das Platzhalterzeichen `*` steht für ein beliebiges Zeichen, nicht jedoch für den Schrägstrich (`/`). Das Zeichen `*` ist ein Sonderzeichen in YAML. Wenn ein Muster mit `*` beginnen soll, sind Anführungszeichen erforderlich. | `README.md`<br/><br/>`server.rb` |
| `'*.jsx?'` | Das Zeichen `?` steht für null Instanzen oder genau eine Instanz des vorangegangenen Zeichens. | `page.js`<br/><br/>`page.jsx` |
| `'**'` | Das Platzhalterzeichen `**` steht für ein beliebiges Zeichen, auch für den Schrägstrich (`/`). Dies ist das Standardverhalten, wenn Sie keinen `path`-Filter angeben. | `all/the/files.md` |
| `'*.js'` | Das Platzhalterzeichen `*` steht für ein beliebiges Zeichen, nicht jedoch für den Schrägstrich (`/`). Abgleich mit allen `.js`-Dateien im Root des Repositorys. | `app.js`<br/><br/>`index.js` |
| `'**.js'` | Abgleich mit allen `.js`-Dateien im Repository. | `index.js`<br/><br/>`js/index.js`<br/><br/>`src/js/app.js` |
| `docs/*` | Alle Dateien im Root des Verzeichnisses `docs` im Root des Repositorys. | `docs/README.md`<br/><br/>`docs/file.txt` |
| `docs/**` | Beliebige Dateien im Verzeichnis `docs` im Root des Repositorys. | `docs/README.md`<br/><br/>`docs/mona/octocat.txt` |
| `docs/**/*.md` | Eine Datei mit dem Suffix `.md` an beliebiger Stelle im Verzeichnis `docs`. | `docs/README.md`<br/><br/>`docs/mona/hello-world.md`<br/><br/>`docs/a/markdown/file.md` |
| `'**/docs/**'` | Beliebige Dateien im Verzeichnis `docs` an beliebiger Stelle im Repository. | `/docs/hello.md`<br/><br/>`dir/docs/my-file.txt`<br/><br/>`space/docs/plan/space.doc` |
| `'**/README.md'` | Eine Datei mit dem Namen „README.md“ an beliebiger Stelle im Repository. | `README.md`<br/><br/>`js/README.md` |
| `'**/*src/**'` | Eine beliebige Datei in einem Ordner mit dem Suffix `src` an beliebiger Stelle im Repository. | `a/src/app.js`<br/><br/>`my-src/code/js/app.js` |
| `'**/*-post.md'` | Eine Datei mit dem Suffix `-post.md` an beliebiger Stelle im Repository. | `my-post.md`<br/><br/>`path/their-post.md` |
| `'**/migrate-*.sql'` | Eine Datei mit dem Präfix `migrate-` und dem Suffix `.sql` an beliebiger Stelle im Repository. | `migrate-10909.sql`<br/><br/>`db/migrate-v1.0.sql`<br/><br/>`db/sept/migrate-v1.sql` |
| `*.md`<br/><br/>`!README.md` | Ein Ausrufezeichen (`!`) vor einem Muster negiert das Muster. Wenn eine Datei sowohl mit einem Muster übereinstimmt als auch mit einem negativen Muster, das später in der Datei definiert ist, wird die Datei nicht berücksichtigt. | `hello.md`<br/><br/>_Does not match_<br/><br/>`README.md`<br/><br/>`docs/hello.md` |
| `*.md`<br/><br/>`!README.md`<br/><br/>`README*` | Die Muster werden sequenziell geprüft. Wenn ein Muster ein vorangegangenes Muster negiert, werden die Dateipfade wieder berücksichtigt. | `hello.md`<br/><br/>`README.md`<br/><br/>`README.doc` |

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

@ -46,7 +46,7 @@ A mapping is created between the `NameID` and the {% data variables.product.prod
### SAML-Metadaten
Die Service Provider-Metadaten Ihrer {% data variables.product.prodname_ghe_server %}-Instanzen sind unter `http(s)://[hostname]/saml/metadata` verfügbar.
Your {% data variables.product.prodname_ghe_server %} instance's service provider metadata is available at `http(s)://[hostname]/saml/metadata`.
Wenn Sie Ihren Identity Provider manuell konfigurieren möchten, lautet die Assertionsverbraucherdienst-URL (ACS) `http(s)://[hostname]/saml/consume`. Dafür wird die Bindung `urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST` verwendet.

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

@ -468,20 +468,23 @@ ghe-webhook-logs
```
Um alle fehlgeschlagenen Hook-Auslieferungen vom Vortag anzuzeigen:
{% if currentVersion ver_gt "enterprise-server@2.22" %}
```shell
ghe-webhook-logs -f -a <em>YYYY-MM-DD</em>
```
The date format should be `YYYY-MM-DD`, `YYYY-MM-DD HH:MM:SS`, or `YYYY-MM-DD HH:MM:SS (+/-) HH:M`.
{% else %}
```shell
ghe-webhook-logs -f -a <em>YYYYMMDD</em>
```
{% endif %}
Um die vollständige Hook-Nutzlast, das Ergebnis und alle Ausnahmen für die Lieferung anzuzeigen:
```shell
ghe-webhook-logs -g <em>delivery-guid</em> -v
```
Um globale Webhook-Lieferungen anzuzeigen:
```shell
ghe-webhook-logs --global
```
### Clustering
#### ghe-cluster-status

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

@ -21,5 +21,7 @@ Wenn ein Proxyserver für {% data variables.product.product_location %} aktivier
{% data reusables.enterprise_site_admin_settings.management-console %}
{% data reusables.enterprise_management_console.privacy %}
4. Geben Sie unter **HTTP Proxy Server** (HTTP-Proxyserver) die URL Ihres Proxyservers ein. ![Feld zur Eingabe der HTTP-Proxyserver-URL](/assets/images/enterprise/management-console/http-proxy-field.png)
5. Geben Sie optional unter **HTTP Proxy Exclusion** (HTTP-Proxyausschluss) die Hosts ein, für die kein Proxyzugriff erforderlich ist. Trennen Sie dabei die Hosts durch Kommas voneinander. ![Feld zur Eingabe von HTTP-Proxyausschlüssen](/assets/images/enterprise/management-console/http-proxy-exclusion-field.png)
5. Geben Sie optional unter **HTTP Proxy Exclusion** (HTTP-Proxyausschluss) die Hosts ein, für die kein Proxyzugriff erforderlich ist. Trennen Sie dabei die Hosts durch Kommas voneinander. To exclude all hosts in a domain from requiring proxy access, you can use `.` as a wildcard prefix. For example: `.octo-org.tentacle` ![Feld zur Eingabe von HTTP-Proxyausschlüssen](/assets/images/enterprise/management-console/http-proxy-exclusion-field.png)
{% data reusables.enterprise_management_console.save-settings %}

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

@ -80,6 +80,14 @@ Wenn sich Backup-Versuche überschneiden, wird der Befehl `ghe-backup` mit einer
Im Falle eines längeren Ausfalls oder einer Katastrophe am Hauptstandort können Sie {% data variables.product.product_location %} wiederherstellen. Stellen Sie dazu eine andere {% data variables.product.prodname_enterprise %}-Appliance bereit, und führen Sie auf dem Backup-Host eine Wiederherstellung aus. Sie müssen der Ziel-{% data variables.product.prodname_enterprise %}-Appliance den SSH-Schlüssel des Backup-Hosts als einen autorisierten SSH-Schlüssel hinzufügen, bevor Sie eine Appliance wiederherstellen.
{%if currentVersion ver_gt "enterprise-server@2.22"%}
{% note %}
**Note:** If {% data variables.product.product_location %} has {% data variables.product.prodname_actions %} enabled, you must first configure the {% data variables.product.prodname_actions %} external storage provider on the replacement appliance before running the the `ghe-restore` command. For more information, see "[Backing up and restoring {% data variables.product.prodname_ghe_server %} with {% data variables.product.prodname_actions %} enabled](/admin/github-actions/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled)."
{% endnote %}
{% endif %}
Führen Sie den Befehl `ghe-restore` aus, um den letzten erfolgreichen {% data variables.product.product_location %}-Snapshot wiederherzustellen. Es sollte in etwa folgende Ausgabe angezeigt werden:
```shell

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

@ -28,11 +28,11 @@ For the users of {% data variables.product.product_location %} to be able to ena
{% data reusables.enterprise_site_admin_settings.management-console %}
1. Check if there is an **{% data variables.product.prodname_advanced_security %}** entry in the left sidebar. ![Advanced Security sidebar](/assets/images/enterprise/management-console/sidebar-advanced-security.png)
If you can't see **{% data variables.product.prodname_advanced_security %}** in the sidebar, it means that your license doesn't include support for {% data variables.product.prodname_advanced_security %} features including {% data variables.product.prodname_code_scanning %}. The {% data variables.product.prodname_advanced_security %} license gives you and your users access to features that help you make your repositories and code more secure.
{% data reusables.enterprise_management_console.advanced-security-license %}
### {% data variables.product.prodname_code_scanning %} aktivieren
{% data reusables.enterprise_management_console.enable-disable-code-scanning %}
{% data reusables.enterprise_management_console.enable-disable-security-features %}
{% data reusables.enterprise_site_admin_settings.access-settings %}
{% data reusables.enterprise_site_admin_settings.management-console %}
@ -47,35 +47,42 @@ If you can't see **{% data variables.product.prodname_advanced_security %}** in
#### Setting up a self-hosted runner
If you are enrolled in the {% data variables.product.prodname_actions %} beta, then {% data variables.product.prodname_ghe_server %} can run {% data variables.product.prodname_code_scanning %} using a {% data variables.product.prodname_actions %} workflow. First, you need to provision one or more self-hosted {% data variables.product.prodname_actions %} runners in your environment. You can provision self-hosted runners at the repository, organization, or enterprise account level. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners)" and "[Adding self-hosted runners](/actions/hosting-your-own-runners/adding-self-hosted-runners)."
{% data variables.product.prodname_ghe_server %} can run {% data variables.product.prodname_code_scanning %} using a {% data variables.product.prodname_actions %} workflow. First, you need to provision one or more self-hosted {% data variables.product.prodname_actions %} runners in your environment. You can provision self-hosted runners at the repository, organization, or enterprise account level. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners)" and "[Adding self-hosted runners](/actions/hosting-your-own-runners/adding-self-hosted-runners)."
You must ensure that Git is in the PATH variable on any self-hosted runners you use to run {% data variables.product.prodname_codeql %} actions.
#### Provisioning the action
To run {% data variables.product.prodname_code_scanning %} on {% data variables.product.prodname_ghe_server %} with {% data variables.product.prodname_actions %}, the appropriate action must be available locally. You can make the action available in three ways.
{% if currentVersion == "enterprise-server@2.22" %}
#### Provisioning the actions
To run {% data variables.product.prodname_code_scanning %} on {% data variables.product.prodname_ghe_server %} with {% data variables.product.prodname_actions %}, the appropriate actions must be available locally. You can make the actions available in three ways.
- **Recommended** You can use [{% data variables.product.prodname_github_connect %}](/enterprise/admin/configuration/connecting-github-enterprise-server-to-github-enterprise-cloud) to automatically download actions from {% data variables.product.prodname_dotcom_the_website %}. The machine that hosts your instance must be able to access {% data variables.product.prodname_dotcom_the_website %}. This approach ensures that you get the latest software automatically. For more information, see "[Configuring {% data variables.product.prodname_github_connect %} to sync {% data variables.product.prodname_actions %}](/enterprise/admin/configuration/configuring-code-scanning-for-your-appliance#configuring-github-connect-to-sync-github-actions)."
- **Recommended**: You can use [{% data variables.product.prodname_github_connect %}](/enterprise/admin/configuration/connecting-github-enterprise-server-to-github-enterprise-cloud) to automatically download actions from {% data variables.product.prodname_dotcom_the_website %}. The machine that hosts your instance must be able to access {% data variables.product.prodname_dotcom_the_website %}. This approach ensures that you get the latest software automatically. For more information, see "[Configuring {% data variables.product.prodname_github_connect %} to sync {% data variables.product.prodname_actions %}](/enterprise/admin/configuration/configuring-code-scanning-for-your-appliance#configuring-github-connect-to-sync-github-actions)."
- If you want to use the {% data variables.product.prodname_codeql_workflow %}, you can sync the repository from {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.prodname_ghe_server %}, by using the {% data variables.product.prodname_codeql %} Action sync tool available at [https://github.com/github/codeql-action-sync-tool](https://github.com/github/codeql-action-sync-tool/). You can use this tool regardless of whether {% data variables.product.product_location %} or your {% data variables.product.prodname_actions %} runners have access to the internet, as long as you can access both {% data variables.product.product_location %} and {% data variables.product.prodname_dotcom_the_website %} simultaneously on your computer.
- You can create a local copy of the action's repository on your server, by cloning the {% data variables.product.prodname_dotcom_the_website %} repository with the action. For example, if you want to use the {% data variables.product.prodname_codeql %} action, you can create a repository in your instance called `github/codeql-action`, then clone the [repository](https://github.com/github/codeql-action) from {% data variables.product.prodname_dotcom_the_website %}, and then push that repository to your instance's `github/codeql-action` repository. You will also need to download any of the releases from the repository on {% data variables.product.prodname_dotcom_the_website %} and upload them to your instance's `github/codeql-action` repository as releases.
- You can create a local copy of an action's repository on your server, by cloning the {% data variables.product.prodname_dotcom_the_website %} repository that contains the action. For example, if you want to use the actions for {% data variables.product.prodname_codeql %} {% data variables.product.prodname_code_scanning %}, you can create a repository in your instance called `github/codeql-action`, then clone the [repository](https://github.com/github/codeql-action) from {% data variables.product.prodname_dotcom_the_website %}, and then push that repository to your instance's `github/codeql-action` repository. You will also need to download any of the releases from the repository on {% data variables.product.prodname_dotcom_the_website %} and upload them to your instance's `github/codeql-action` repository as releases.
##### Configuring {% data variables.product.prodname_github_connect %} to sync {% data variables.product.prodname_actions %}
1. If you want to download action workflows on demand from {% data variables.product.prodname_dotcom_the_website %}, you need to enable {% data variables.product.prodname_github_connect %}. For more information, see "[Enabling {% data variables.product.prodname_github_connect %}](/enterprise/admin/configuration/connecting-github-enterprise-server-to-github-enterprise-cloud#enabling-github-connect)."
2. You'll also need to enable {% data variables.product.prodname_actions %} for {% data variables.product.product_location %}. For more information, see "[Enabling {% data variables.product.prodname_actions %} and configuring storage](/enterprise/admin/github-actions/enabling-github-actions-and-configuring-storage)."
2. You'll also need to enable {% data variables.product.prodname_actions %} for {% data variables.product.product_location %}. For more information, see "[Getting started with {% data variables.product.prodname_actions %} for {% data variables.product.prodname_ghe_server %}](/admin/github-actions/getting-started-with-github-actions-for-github-enterprise-server)."
3. The next step is to configure access to actions on {% data variables.product.prodname_dotcom_the_website %} using {% data variables.product.prodname_github_connect %}. For more information, see "[Enabling automatic access to {% data variables.product.prodname_dotcom_the_website %} actions using {% data variables.product.prodname_github_connect %}](/enterprise/admin/github-actions/enabling-automatic-access-to-githubcom-actions-using-github-connect)."
4. Add a self-hosted runner to your repository, organization, or enterprise account. Weitere Informationen findest Du unter "[selbst-gehostete Runner hinzufügen](/actions/hosting-your-own-runners/adding-self-hosted-runners)."
{% endif %}
After you configure a self-hosted runner, users can enable {% data variables.product.prodname_code_scanning %} for individual repositories on {% data variables.product.product_location %}. The default {% data variables.product.prodname_code_scanning %} workflow uses the `on.push` event to trigger a code scan on every push to any branch containing the workflow file.
{% if currentVersion ver_gt "enterprise-server@2.22" %}
#### Configuring {% data variables.product.prodname_codeql %} on a server without internet access
If the server on which you are running
{% data variables.product.prodname_ghe_server %} is not connected to the internet, and you want to allow users to enable {% data variables.product.prodname_codeql %} {% data variables.product.prodname_code_scanning %} for their repositories, you must use the {% data variables.product.prodname_codeql %} Action sync tool to copy the {% data variables.product.prodname_codeql %} actions and query bundle from {% data variables.product.prodname_dotcom_the_website %} to your server. The tool, and details of how to use it, are available at [https://github.com/github/codeql-action-sync-tool](https://github.com/github/codeql-action-sync-tool/).
{% endif %}
#### Enabling code scanning for individual repositories
After you configure a self-hosted runner, {% if currentVersion == "enterprise-server@2.22" %}and provision the actions,{% endif %} users can enable {% data variables.product.prodname_code_scanning %} for individual repositories on {% data variables.product.product_location %}. The default {% data variables.product.prodname_code_scanning %} workflow uses the `on.push` event to trigger a code scan on every push to any branch containing the workflow file.
### Running {% data variables.product.prodname_code_scanning %} using the {% data variables.product.prodname_codeql_runner %}
If your organization isn't taking part in the beta for {% data variables.product.prodname_actions %}, or if you don't want to use {% data variables.product.prodname_actions %}, you can run {% data variables.product.prodname_code_scanning %} using the {% data variables.product.prodname_codeql_runner %}.
If you don't want to use {% data variables.product.prodname_actions %}, you can run {% data variables.product.prodname_code_scanning %} using the {% data variables.product.prodname_codeql_runner %}.
The {% data variables.product.prodname_codeql_runner %} is a command-line tool that you can add to your third-party CI/CD system. The tool runs {% data variables.product.prodname_codeql %} analysis on a checkout of a {% data variables.product.prodname_dotcom %} repository. For more information, see "[Running {% data variables.product.prodname_code_scanning %} in your CI system](/github/finding-security-vulnerabilities-and-errors-in-your-code/running-codeql-code-scanning-in-your-ci-system)."
### Disabling {% data variables.product.prodname_code_scanning %}
{% data reusables.enterprise_management_console.enable-disable-code-scanning %}
{% data reusables.enterprise_management_console.enable-disable-security-features %}
{% data reusables.enterprise_site_admin_settings.access-settings %}
{% data reusables.enterprise_site_admin_settings.management-console %}

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

@ -0,0 +1,70 @@
---
title: Configuring secret scanning for your appliance
shortTitle: Configuring secret scanning
intro: 'You can enable, configure, and disable {% data variables.product.prodname_secret_scanning %} for {% data variables.product.product_location %}. {% data variables.product.prodname_secret_scanning_caps %} allows users to scan code for accidentally committed secrets.'
product: '{% data reusables.gated-features.secret-scanning %}'
miniTocMaxHeadingLevel: 4
versions:
enterprise-server: '>=3.0'
---
{% data reusables.secret-scanning.beta %}
### Informationen zu {% data variables.product.prodname_secret_scanning %}
{% data reusables.secret-scanning.about-secret-scanning %} For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)."
### Vorrausetzungen
To use {% data variables.product.prodname_secret_scanning %} in {% data variables.product.product_location %} you need these two prerequisites.
- The [SSSE3](https://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-optimization-manual.pdf#G3.1106470) (Supplemental Streaming SIMD Extensions 3) CPU flag needs to be enabled on the VM/KVM that runs {% data variables.product.product_location %}.
- You need an {% data variables.product.prodname_advanced_security %} license.
#### Checking support for the SSSE3 flag on your vCPUs
The SSSE3 set of instructions is required because {% data variables.product.prodname_secret_scanning %} leverages hardware accelerated pattern matching to find potential credentials committed to your {% data variables.product.prodname_dotcom %} repositories. SSSE3 is enabled for most modern CPUs. You can check whether SSSE3 is enabled for the vCPUs available to your {% data variables.product.prodname_ghe_server %} instance.
1. Connect to the administrative shell for your {% data variables.product.prodname_ghe_server %} instance. Weitere Informationen findest Du unter "[Auf die administrative Shell (SSH) zugreifen](/admin/configuration/accessing-the-administrative-shell-ssh)."
2. Enter the following command:
```shell
grep -iE '^flags.*ssse3' /proc/cpuinfo >/dev/null | echo $?
```
If this returns the value `0`, it means that the SSSE3 flag is available and enabled. You can now enable {% data variables.product.prodname_secret_scanning %} for {% data variables.product.product_location %}. For more information, see "[Enabling secret scanning](#enabling-secret-scanning)" below.
If this doesn't return `0`, SSSE3 is not enabled on your VM/KVM. You need to refer to the documentation of the hardware/hypervisor on how to enable the flag, or make it available to guest VMs.
#### Checking whether you have an {% data variables.product.prodname_advanced_security %} license
{% data reusables.enterprise_site_admin_settings.access-settings %}
{% data reusables.enterprise_site_admin_settings.management-console %}
1. Check if there is an **{% data variables.product.prodname_advanced_security %}** entry in the left sidebar. ![Advanced Security sidebar](/assets/images/enterprise/management-console/sidebar-advanced-security.png)
{% data reusables.enterprise_management_console.advanced-security-license %}
### {% data variables.product.prodname_secret_scanning %} aktivieren
{% data reusables.enterprise_management_console.enable-disable-security-features %}
{% data reusables.enterprise_site_admin_settings.access-settings %}
{% data reusables.enterprise_site_admin_settings.management-console %}
{% data reusables.enterprise_management_console.advanced-security-tab %}
1. Under "
{% data variables.product.prodname_advanced_security %}," click **{% data variables.product.prodname_secret_scanning_caps %}**.
![Checkbox to enable or disable {% data variables.product.prodname_secret_scanning %}](/assets/images/enterprise/management-console/enable-secret-scanning-checkbox.png)
{% data reusables.enterprise_management_console.save-settings %}
### Disabling {% data variables.product.prodname_secret_scanning %}
{% data reusables.enterprise_management_console.enable-disable-security-features %}
{% data reusables.enterprise_site_admin_settings.access-settings %}
{% data reusables.enterprise_site_admin_settings.management-console %}
{% data reusables.enterprise_management_console.advanced-security-tab %}
1. Under "
{% data variables.product.prodname_advanced_security %}", unselect **{% data variables.product.prodname_secret_scanning_caps %}**.
![Checkbox to enable or disable {% data variables.product.prodname_secret_scanning %}](/assets/images/enterprise/management-console/secret-scanning-disable.png)
{% data reusables.enterprise_management_console.save-settings %}

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

@ -15,30 +15,31 @@ Die Subdomain-Isolation mindert Cross-Site-Scripting und andere verwandte Schwac
Bei aktivierter Subdomain-Isolation ersetzt {% data variables.product.prodname_ghe_server %} verschiedene Pfade durch Subdomains.
{% if currentVersion ver_gt "enterprise-server@2.21" %}
{% if currentVersion == "enterprise-server@2.22" %}
To use Docker with
{% data variables.product.prodname_registry %}, you must also enable subdomain isolation. For more information, see "[Configuring Docker for use with {% data variables.product.prodname_registry %}](/enterprise/{{ currentVersion }}/user/packages/using-github-packages-with-your-projects-ecosystem/configuring-docker-for-use-with-github-packages)."
{% data reusables.package_registry.packages-ghes-release-stage %}
|
{% endif %}
| Pfad ohne Subdomain-Isolation | Pfad mit Subdomain-Isolation |
| ---------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| `http(s)://HOSTNAME/assets/` | `http(s)://assets.HOSTNAME/` |
| `http(s)://HOSTNAME/avatars/` | `http(s)://avatars.HOSTNAME/` |
| `http(s)://HOSTNAME/codeload/` | `http(s)://codeload.HOSTNAME/` |
| `http(s)://HOSTNAME/gist/` | `http(s)://gist.HOSTNAME/` |
| `http(s)://HOSTNAME/media/` | `http(s)://media.HOSTNAME/` |
| `http(s)://HOSTNAME/pages/` | `http(s)://pages.HOSTNAME/` |
| `http(s)://HOSTNAME/raw/` | `http(s)://raw.HOSTNAME/` |
| `http(s)://HOSTNAME/render/` | `http(s)://render.HOSTNAME/` |
| `http(s)://HOSTNAME/reply/` | `http(s)://reply.HOSTNAME/` |
| `http(s)://HOSTNAME/uploads/` | `http(s)://uploads.HOSTNAME/` |{% if currentVersion ver_gt "enterprise-server@2.21" %}
| N/A, Docker with {% data variables.product.prodname_registry %} will not work with subdomain isolation disabled. | `http(s)://uploads.HOSTNAME/` |
| `https://HOSTNAME/_registry/npm/` | `https://npm.HOSTNAME/` |
| `https://HOSTNAME/_registry/rubygems/` | `https://rubygems.HOSTNAME/` |
| `https://HOSTNAME/_registry/maven/` | `https://maven.HOSTNAME/` |
| `https://HOSTNAME/_registry/nuget/` | `https://nuget.HOSTNAME/`{% endif %}
| Pfad ohne Subdomain-Isolation | Pfad mit Subdomain-Isolation |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| `http(s)://HOSTNAME/assets/` | `http(s)://assets.HOSTNAME/` |
| `http(s)://HOSTNAME/avatars/` | `http(s)://avatars.HOSTNAME/` |
| `http(s)://HOSTNAME/codeload/` | `http(s)://codeload.HOSTNAME/` |
| `http(s)://HOSTNAME/gist/` | `http(s)://gist.HOSTNAME/` |
| `http(s)://HOSTNAME/media/` | `http(s)://media.HOSTNAME/` |
| `http(s)://HOSTNAME/pages/` | `http(s)://pages.HOSTNAME/` |
| `http(s)://HOSTNAME/raw/` | `http(s)://raw.HOSTNAME/` |
| `http(s)://HOSTNAME/render/` | `http(s)://render.HOSTNAME/` |
| `http(s)://HOSTNAME/reply/` | `http(s)://reply.HOSTNAME/` |
| `http(s)://HOSTNAME/uploads/` | `http(s)://uploads.HOSTNAME/` |{% if currentVersion == "enterprise-server@2.22" %}
| N/A, Docker with {% data variables.product.prodname_registry %} will not work with subdomain isolation disabled for the {% data variables.product.prodname_registry %} 2.22 beta. | `http(s)://docker.HOSTNAME/` |{% endif %} |{% if currentVersion ver_gt "enterprise-server@2.22" %}
| `https://HOSTNAME/_registry/docker/` | `http(s)://docker.HOSTNAME/`{% endif %}{% if currentVersion ver_gt "enterprise-server@2.22" %}
| `https://HOSTNAME/_registry/npm/` | `https://npm.HOSTNAME/` |
| `https://HOSTNAME/_registry/rubygems/` | `https://rubygems.HOSTNAME/` |
| `https://HOSTNAME/_registry/maven/` | `https://maven.HOSTNAME/` |
| `https://HOSTNAME/_registry/nuget/` | `https://nuget.HOSTNAME/`{% endif %}
### Vorrausetzungen

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

@ -29,6 +29,7 @@ versions:
{% link_in_list /configuring-backups-on-your-appliance %}
{% link_in_list /site-admin-dashboard %}
{% link_in_list /enabling-private-mode %}
{% link_in_list /managing-github-for-mobile-for-your-enterprise %}
{% link_in_list /configuring-email-for-notifications %}
{% link_in_list /configuring-rate-limits %}
{% link_in_list /configuring-applications %}
@ -56,3 +57,4 @@ versions:
{% link_in_list /enabling-automatic-user-license-sync-between-github-enterprise-server-and-github-enterprise-cloud %}
{% topic_link_in_list /configuring-advanced-security-features %}
{% link_in_list /configuring-code-scanning-for-your-appliance %}
{% link_in_list /configuring-secret-scanning-for-your-appliance %}

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

@ -0,0 +1,26 @@
---
title: Managing GitHub for mobile for your enterprise
intro: You can decide whether authenticated users can connect to {% data variables.product.product_location %} with {% data variables.product.prodname_mobile %}.
permissions: Enterprise owners can manage {% data variables.product.prodname_mobile %} for an enterprise on {% data variables.product.product_name %}.
versions:
enterprise-server: '>=3.0'
---
{% if enterpriseServerVersions contains currentVersion %}
{% data reusables.mobile.ghes-release-phase %}
{% endif %}
### Informationen zu {% data variables.product.prodname_mobile %}
{% data reusables.mobile.about-mobile %} For more information, see "[GitHub for mobile](/github/getting-started-with-github/github-for-mobile)."
Members of your enterprise can use {% data variables.product.prodname_mobile %} to triage, collaborate, and manage work on {% data variables.product.product_location %} from a mobile device. By default, {% data variables.product.prodname_mobile %} is enabled for {% data variables.product.product_location %}. You can allow or disallow enterprise members from using {% data variables.product.prodname_mobile %} to authenticate to {% data variables.product.product_location %} and access your enterprise's data.
### Enabling or disabling {% data variables.product.prodname_mobile %}
{% data reusables.enterprise_site_admin_settings.access-settings %}
{% data reusables.enterprise_site_admin_settings.management-console %}
{% data reusables.enterprise_management_console.type-management-console-password %}
1. In the left sidebar, click **Mobile**. !["Mobile" in the left sidebar for the {% data variables.product.prodname_ghe_server %} management console](/assets/images/enterprise/management-console/click-mobile.png)
1. Under "GitHub for mobile", select or deselect **Enable GitHub Mobile Apps**. ![Checkbox for "Enable GitHub Mobile Apps" in the {% data variables.product.prodname_ghe_server %} management console](/assets/images/enterprise/management-console/select-enable-github-mobile-apps.png)
{% data reusables.enterprise_management_console.save-settings %}

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

@ -24,6 +24,8 @@ Learn more about [services required for clustering](/enterprise/{{ currentVersio
Clustering bietet Redundanz, ist jedoch nicht dazu vorgesehen, eine Hochverfügbarkeitskonfiguration zu ersetzen. Weitere Informationen finden Sie unter „[Hochverfügbarkeitskonfiguration](/enterprise/{{ currentVersion }}/admin/guides/installation/configuring-github-enterprise-server-for-high-availability)“. Eine Konfiguration mit einer primären/sekundären Failover-Instanz ist viel einfacher als Clustering und erfüllt die Anforderungen vieler Organisationen. Weitere Informationen finden Sie unter „[Unterschiede zwischen Clustering und Hochverfügbarkeit](/enterprise/{{ currentVersion }}/admin/guides/clustering/differences-between-clustering-and-high-availability-ha/)“.
{% data reusables.package_registry.packages-cluster-support %}
### Wie kann ich auf Clustering zugreifen?
Clustering ist für bestimmte Skalierungssituationen vorgesehen, nicht aber für jede Organisation. Wenn Du Clustering in Betracht ziehen möchtest, wende Dich bitte an Deinen {% data variables.contact.contact_enterprise_sales %}.

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

@ -23,7 +23,6 @@ versions:
{% link_in_list /increasing-storage-capacity %}
{% link_in_list /increasing-cpu-or-memory-resources %}
{% link_in_list /migrating-from-github-enterprise-1110x-to-2123 %}
{% link_in_list /migrating-elasticsearch-indices-to-github-enterprise-server-214-or-later %}
{% topic_link_in_list /configuring-clustering %}
{% link_in_list /about-clustering %}
{% link_in_list /differences-between-clustering-and-high-availability-ha %}

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

@ -31,3 +31,11 @@ versions:
```shell
$ ghe-repl-teardown
```
{% if currentVersion ver_gt "enterprise-server@2.22" %}
{% note %}
**Note:** If you have {% data variables.product.prodname_actions %} enabled, you should decommission the former replica server or update its {% data variables.product.prodname_actions %} configuration to use different external storage. For more information, see "[High availability for {% data variables.product.prodname_actions %}](/admin/github-actions/high-availability-for-github-actions#high-availability-replicas)."
{% endnote %}
{% endif %}

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше