Merge branch 'main' into fix-bread
|
@ -21,7 +21,6 @@ Thanks again!
|
||||||
<!-- Share artifacts of the changes, be they code snippets, GIFs or screenshots; whatever shares the most context. -->
|
<!-- Share artifacts of the changes, be they code snippets, GIFs or screenshots; whatever shares the most context. -->
|
||||||
|
|
||||||
### Check off the following:
|
### Check off the following:
|
||||||
- [ ] All of the tests are passing.
|
|
||||||
- [ ] I have reviewed my changes in staging. (look for the **deploy-to-heroku** link in your pull request, then click **View deployment**)
|
- [ ] I have reviewed my changes in staging. (look for the **deploy-to-heroku** link in your pull request, then click **View deployment**)
|
||||||
- [ ] For content changes, I have reviewed the [localization checklist](https://github.com/github/docs/blob/main/contributing/localization-checklist.md)
|
- [ ] For content changes, I have reviewed the [localization checklist](https://github.com/github/docs/blob/main/contributing/localization-checklist.md)
|
||||||
- [ ] For content changes, I have reviewed the [Content style guide for GitHub Docs](https://github.com/github/docs/blob/main/contributing/content-style-guide.md).
|
- [ ] For content changes, I have reviewed the [Content style guide for GitHub Docs](https://github.com/github/docs/blob/main/contributing/content-style-guide.md).
|
||||||
|
|
|
@ -36,6 +36,13 @@ jobs:
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Remove all pull requests that don't have the
|
||||||
|
// 'automated-reposync-pr' label
|
||||||
|
pulls.data = pulls.data.filter(pr =>
|
||||||
|
pr.labels.some(label => label.name === 'automated-reposync-pr')
|
||||||
|
)
|
||||||
|
|
||||||
|
// Search for pull requests that have been open too long
|
||||||
pulls.data.forEach(pr => {
|
pulls.data.forEach(pr => {
|
||||||
const timeDelta = Date.now() - Date.parse(pr.created_at);
|
const timeDelta = Date.now() - Date.parse(pr.created_at);
|
||||||
const minutesOpen = timeDelta / 1000 / 60;
|
const minutesOpen = timeDelta / 1000 / 60;
|
||||||
|
|
Двоичные данные
assets/images/github-apps/github_apps_probot-registration.png
До Ширина: | Высота: | Размер: 41 KiB После Ширина: | Высота: | Размер: 536 KiB |
После Ширина: | Высота: | Размер: 34 KiB |
Двоичные данные
assets/images/help/package-registry/confirm-container-package-deletion.png
Normal file
После Ширина: | Высота: | Размер: 37 KiB |
Двоичные данные
assets/images/help/package-registry/confirm-container-package-version-deletion.png
Normal file
После Ширина: | Высота: | Размер: 38 KiB |
После Ширина: | Высота: | Размер: 14 KiB |
Двоичные данные
assets/images/help/package-registry/delete-container-package-version.png
Normal file
После Ширина: | Высота: | Размер: 92 KiB |
Двоичные данные
assets/images/help/package-registry/delete-package-under-danger-zone.png
Normal file
После Ширина: | Высота: | Размер: 119 KiB |
Двоичные данные
assets/images/help/package-registry/make-all-container-versions-visible.png
Normal file
После Ширина: | Высота: | Размер: 43 KiB |
После Ширина: | Высота: | Размер: 28 KiB |
|
@ -209,6 +209,8 @@ For example, this `cleanup.js` will only run on Linux-based runners:
|
||||||
##### `runs.steps[*].run`
|
##### `runs.steps[*].run`
|
||||||
|
|
||||||
**Required** The command you want to run. This can be inline or a script in your action repository:
|
**Required** The command you want to run. This can be inline or a script in your action repository:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
runs:
|
runs:
|
||||||
using: "composite"
|
using: "composite"
|
||||||
|
@ -216,6 +218,7 @@ runs:
|
||||||
- run: ${{ github.action_path }}/test/script.sh
|
- run: ${{ github.action_path }}/test/script.sh
|
||||||
shell: bash
|
shell: bash
|
||||||
```
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
Alternatively, you can use `$GITHUB_ACTION_PATH`:
|
Alternatively, you can use `$GITHUB_ACTION_PATH`:
|
||||||
|
|
||||||
|
|
|
@ -46,7 +46,7 @@ In this guide, we will use the Docker `build-push-action` action to build the Do
|
||||||
|
|
||||||
In the example workflow below, we use the Docker `build-push-action` action to build the Docker image and, if the build succeeds, push the built image to Docker Hub.
|
In the example workflow below, we use the Docker `build-push-action` action to build the Docker image and, if the build succeeds, push the built image to Docker Hub.
|
||||||
|
|
||||||
To push to Docker Hub, you will need to have a Docker Hub account, and have a Docker Hub repository created. For more information, see "[Share images on Docker Hub](https://docs.docker.com/get-started/part3/)" in the Docker documentation.
|
To push to Docker Hub, you will need to have a Docker Hub account, and have a Docker Hub repository created. For more information, see "[Pushing a Docker container image to Docker Hub](https://docs.docker.com/docker-hub/repos/#pushing-a-docker-container-image-to-docker-hub)" in the Docker documentation.
|
||||||
|
|
||||||
The `build-push-action` options required for Docker Hub are:
|
The `build-push-action` options required for Docker Hub are:
|
||||||
|
|
||||||
|
|
|
@ -593,7 +593,8 @@ By default, a workflow only runs when a `pull_request_target`'s activity type is
|
||||||
For example, you can run a workflow when a pull request has been `assigned`, `opened`, `synchronize`, or `reopened`.
|
For example, you can run a workflow when a pull request has been `assigned`, `opened`, `synchronize`, or `reopened`.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
on: pull_request_target
|
on:
|
||||||
|
pull_request_target:
|
||||||
types: [assigned, opened, synchronize, reopened]
|
types: [assigned, opened, synchronize, reopened]
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -301,11 +301,13 @@ steps:
|
||||||
|
|
||||||
`echo "{path}" >> $GITHUB_PATH`
|
`echo "{path}" >> $GITHUB_PATH`
|
||||||
|
|
||||||
Prepends a directory to the system `PATH` variable for all subsequent actions in the current job. The currently running action cannot access the new path variable.
|
Prepends a directory to the system `PATH` variable and makes it available to all subsequent actions in the current job; the currently running action cannot access the updated path variable. To see the currently defined paths for your job, you can use `echo "$PATH"` in a step or an action.
|
||||||
|
|
||||||
#### Example
|
#### Example
|
||||||
|
|
||||||
|
This example demonstrates how to add the user `$HOME/.local/bin` directory to `PATH`:
|
||||||
|
|
||||||
``` bash
|
``` bash
|
||||||
echo "/path/to/dir" >> $GITHUB_PATH
|
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
||||||
```
|
```
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
@ -1149,7 +1149,7 @@ You can use special characters in path, branch, and tag filters.
|
||||||
- `**`: Matches zero or more of any character.
|
- `**`: Matches zero or more of any character.
|
||||||
- `?`: Matches zero or one single character. For example, `Octoc?t` matches `Octocat`.
|
- `?`: Matches zero or one single character. For example, `Octoc?t` matches `Octocat`.
|
||||||
- `+`: Matches one or more of the preceding character.
|
- `+`: Matches one or more of the preceding character.
|
||||||
- `[]` Matches one character listed in the brackets or included in ranges. Ranges can only include `a-z`, `A-Z`, and `0-9`. For example, the range`[0-9a-f]` matches any digits or lowercase letter. For example, `[CB]at` matches `Cat` or `Bat` and `[1-2]00` matches `100` and `200`.
|
- `[]` Matches one character listed in the brackets or included in ranges. Ranges can only include `a-z`, `A-Z`, and `0-9`. For example, the range`[0-9a-z]` matches any digit or lowercase letter. For example, `[CB]at` matches `Cat` or `Bat` and `[1-2]00` matches `100` and `200`.
|
||||||
- `!`: At the start of a pattern makes it negate previous positive patterns. It has no special meaning if not the first character.
|
- `!`: At the start of a pattern makes it negate previous positive patterns. It has no special meaning if not the first character.
|
||||||
|
|
||||||
The characters `*`, `[`, and `!` are special characters in YAML. If you start a pattern with `*`, `[`, or `!`, you must enclose the pattern in quotes.
|
The characters `*`, `[`, and `!` are special characters in YAML. If you start a pattern with `*`, `[`, or `!`, you must enclose the pattern in quotes.
|
||||||
|
@ -1169,14 +1169,14 @@ For more information about branch, tag, and path filter syntax, see "[`on.<push|
|
||||||
|
|
||||||
| Pattern | Description | Example matches |
|
| Pattern | Description | Example matches |
|
||||||
|---------|------------------------|---------|
|
|---------|------------------------|---------|
|
||||||
| `feature/*` | The `*` wildcard matches any character, but does not match slash (`/`). | -`feature/my-branch`<br/>-`feature/your-branch` |
|
| `feature/*` | The `*` wildcard matches any character, but does not match slash (`/`). | `feature/my-branch`<br/><br/>`feature/your-branch` |
|
||||||
| `feature/**` | The `**` wildcard matches any character including slash (`/`) in branch and tag names. | -`feature/beta-a/my-branch`<br/>-`feature/your-branch`<br/>-`feature/mona/the/octocat` |
|
| `feature/**` | The `**` wildcard matches any character including slash (`/`) in branch and tag names. | `feature/beta-a/my-branch`<br/><br/>`feature/your-branch`<br/><br/>`feature/mona/the/octocat` |
|
||||||
| -`main`<br/>-`releases/mona-the-octcat` | Matches the exact name of a branch or tag name. | -`main`<br/>-`releases/mona-the-octocat` |
|
| `main`<br/><br/>`releases/mona-the-octcat` | Matches the exact name of a branch or tag name. | `main`<br/><br/>`releases/mona-the-octocat` |
|
||||||
| `'*'` | Matches all branch and tag names that don't contain a slash (`/`). The `*` character is a special character in YAML. When you start a pattern with `*`, you must use quotes. | -`main`<br/>-`releases` |
|
| `'*'` | Matches all branch and tag names that don't contain a slash (`/`). The `*` character is a special character in YAML. When you start a pattern with `*`, you must use quotes. | `main`<br/><br/>`releases` |
|
||||||
| `'**'` | Matches all branch and tag names. This is the default behavior when you don't use a `branches` or `tags` filter. | -`all/the/branches`<br/>-`every/tag` |
|
| `'**'` | Matches all branch and tag names. This is the default behavior when you don't use a `branches` or `tags` filter. | `all/the/branches`<br/><br/>`every/tag` |
|
||||||
| `'*feature'` | The `*` character is a special character in YAML. When you start a pattern with `*`, you must use quotes. | -`mona-feature`<br/>-`feature`<br/>-`ver-10-feature` |
|
| `'*feature'` | The `*` character is a special character in YAML. When you start a pattern with `*`, you must use quotes. | `mona-feature`<br/><br/>`feature`<br/><br/>`ver-10-feature` |
|
||||||
| `v2*` | Matches branch and tag names that start with `v2`. | -`v2`<br/>-`v2.0`<br/>-`v2.9` |
|
| `v2*` | Matches branch and tag names that start with `v2`. | `v2`<br/><br/>`v2.0`<br/><br/>`v2.9` |
|
||||||
| `v[12].[0-9]+.[0-9]+` | Matches all semantic versioning tags with major version 1 or 2 | -`v1.10.1`<br/>-`v2.0.0` |
|
| `v[12].[0-9]+.[0-9]+` | Matches all semantic versioning tags with major version 1 or 2 | `v1.10.1`<br/><br/>`v2.0.0` |
|
||||||
|
|
||||||
#### Patterns to match file paths
|
#### Patterns to match file paths
|
||||||
|
|
||||||
|
@ -1184,18 +1184,18 @@ Path patterns must match the whole path, and start from the repository's root.
|
||||||
|
|
||||||
| Pattern | Description of matches | Example matches |
|
| Pattern | Description of matches | Example matches |
|
||||||
|---------|------------------------|-----------------|
|
|---------|------------------------|-----------------|
|
||||||
| `'*'` | The `*` wildcard matches any character, but does not match slash (`/`). The `*` character is a special character in YAML. When you start a pattern with `*`, you must use quotes. | -`README.md`<br/>-`server.rb` |
|
| `'*'` | The `*` wildcard matches any character, but does not match slash (`/`). The `*` character is a special character in YAML. When you start a pattern with `*`, you must use quotes. | `README.md`<br/><br/>`server.rb` |
|
||||||
| `'*.jsx?'` | The `?` character matches zero or one of the preceding character. | -`page.js`<br/>-`page.jsx` |
|
| `'*.jsx?'` | The `?` character matches zero or one of the preceding character. | `page.js`<br/><br/>`page.jsx` |
|
||||||
| `'**'` | The `**` wildcard matches any character including slash (`/`). This is the default behavior when you don't use a `path` filter. | -`all/the/files.md` |
|
| `'**'` | The `**` wildcard matches any character including slash (`/`). This is the default behavior when you don't use a `path` filter. | `all/the/files.md` |
|
||||||
| `'*.js'` | The `*` wildcard matches any character, but does not match slash (`/`). Matches all `.js` files at the root of the repository. | -`app.js`<br/>-`index.js`
|
| `'*.js'` | The `*` wildcard matches any character, but does not match slash (`/`). Matches all `.js` files at the root of the repository. | `app.js`<br/><br/>`index.js`
|
||||||
| `'**.js'` | Matches all `.js` files in the repository. | -`index.js`<br/>-`js/index.js`<br/>-`src/js/app.js` |
|
| `'**.js'` | Matches all `.js` files in the repository. | `index.js`<br/><br/>`js/index.js`<br/><br/>`src/js/app.js` |
|
||||||
| `docs/*` | All files within the root of the `docs` directory, at the root of the repository. | -`docs/README.md`<br/>-`docs/file.txt` |
|
| `docs/*` | All files within the root of the `docs` directory, at the root of the repository. | `docs/README.md`<br/><br/>`docs/file.txt` |
|
||||||
| `docs/**` | Any files in the `/docs` directory at the root of the repository. | -`docs/README.md`<br/>-`docs/mona/octocat.txt` |
|
| `docs/**` | Any files in the `/docs` directory at the root of the repository. | `docs/README.md`<br/><br/>`docs/mona/octocat.txt` |
|
||||||
| `docs/**/*.md` | A file with a `.md` suffix anywhere in the `docs` directory. | -`docs/README.md`<br/>-`docs/mona/hello-world.md`<br/>-`docs/a/markdown/file.md`
|
| `docs/**/*.md` | A file with a `.md` suffix anywhere in the `docs` directory. | `docs/README.md`<br/><br/>`docs/mona/hello-world.md`<br/><br/>`docs/a/markdown/file.md`
|
||||||
| `'**/docs/**'` | Any files in a `docs` directory anywhere in the repository. | -`/docs/hello.md`<br/>-`dir/docs/my-file.txt`<br/>-`space/docs/plan/space.doc`
|
| `'**/docs/**'` | Any files in a `docs` directory anywhere in the repository. | `/docs/hello.md`<br/><br/>`dir/docs/my-file.txt`<br/><br/>`space/docs/plan/space.doc`
|
||||||
| `'**/README.md'` | A README.md file anywhere in the repository. | -`README.md`<br/>-`js/README.md`
|
| `'**/README.md'` | A README.md file anywhere in the repository. | `README.md`<br/><br/>`js/README.md`
|
||||||
| `'**/*src/**'` | Any file in a folder with a `src` suffix anywhere in the repository. | -`a/src/app.js`<br/>-`my-src/code/js/app.js`
|
| `'**/*src/**'` | Any file in a folder with a `src` suffix anywhere in the repository. | `a/src/app.js`<br/><br/>`my-src/code/js/app.js`
|
||||||
| `'**/*-post.md'` | A file with the suffix `-post.md` anywhere in the repository. | -`my-post.md`<br/>-`path/their-post.md` |
|
| `'**/*-post.md'` | A file with the suffix `-post.md` anywhere in the repository. | `my-post.md`<br/><br/>`path/their-post.md` |
|
||||||
| `'**/migrate-*.sql'` | A file with the prefix `migrate-` and suffix `.sql` anywhere in the repository. | -`migrate-10909.sql`<br/>-`db/migrate-v1.0.sql`<br/>-`db/sept/migrate-v1.sql` |
|
| `'**/migrate-*.sql'` | A file with the prefix `migrate-` and suffix `.sql` anywhere in the repository. | `migrate-10909.sql`<br/><br/>`db/migrate-v1.0.sql`<br/><br/>`db/sept/migrate-v1.sql` |
|
||||||
| -`*.md`<br/>-`!README.md` | Using an exclamation mark (`!`) in front of a pattern negates it. When a file matches a pattern and also matches a negative pattern defined later in the file, the file will not be included. | -`hello.md`<br/>_Does not match_<br/>-`README.md`<br/>-`docs/hello.md` |
|
| `*.md`<br/><br/>`!README.md` | Using an exclamation mark (`!`) in front of a pattern negates it. When a file matches a pattern and also matches a negative pattern defined later in the file, the file will not be included. | `hello.md`<br/><br/>_Does not match_<br/><br/>`README.md`<br/><br/>`docs/hello.md` |
|
||||||
| -`*.md`<br/>-`!README.md`<br/>-`README*` | Patterns are checked sequentially. A pattern that negates a previous pattern will re-include file paths. | -`hello.md`<br/>-`README.md`<br/>-`README.doc`|
|
| `*.md`<br/><br/>`!README.md`<br/><br/>`README*` | Patterns are checked sequentially. A pattern that negates a previous pattern will re-include file paths. | `hello.md`<br/><br/>`README.md`<br/><br/>`README.doc`|
|
||||||
|
|
|
@ -18,7 +18,11 @@ An enterprise account allows you to manage multiple organizations{% if enterpris
|
||||||
- Security {% if enterpriseServerVersions contains currentVersion %}(single sign-on, two factor authentication)
|
- Security {% if enterpriseServerVersions contains currentVersion %}(single sign-on, two factor authentication)
|
||||||
- Requests {% if enterpriseServerVersions contains currentVersion %}and support bundle sharing {% endif %}with {% data variables.contact.enterprise_support %}{% endif %}
|
- Requests {% if enterpriseServerVersions contains currentVersion %}and support bundle sharing {% endif %}with {% data variables.contact.enterprise_support %}{% endif %}
|
||||||
|
|
||||||
{% if enterpriseServerVersions contains currentVersion %}{% data reusables.enterprise-accounts.enterprise-accounts-billing %} For more information about managing your {% data variables.product.prodname_ghe_cloud %} subscription, see "[Viewing the subscription and usage for your enterprise account](/articles/viewing-the-subscription-and-usage-for-your-enterprise-account)." {% endif %}For more information about managing your {% data variables.product.product_name %} billing settings, see "[Managing billing for your enterprise](/admin/overview/managing-billing-for-your-enterprise)."
|
{% if enterpriseServerVersions contains currentVersion %}{% data reusables.enterprise-accounts.enterprise-accounts-billing %} For more information about the management of your {% data variables.product.prodname_ghe_cloud %} subscription, see "[Viewing the subscription and usage for your enterprise account](/articles/viewing-the-subscription-and-usage-for-your-enterprise-account)." {% endif %}For more information about managing your {% data variables.product.product_name %} billing settings, see "[Managing billing for your enterprise](/admin/overview/managing-billing-for-your-enterprise)."
|
||||||
|
|
||||||
|
For more information about the management of users, organizations, data, and policies for {% data variables.product.product_location %}, see "[Managing users, organizations, and repositories](/admin/user-management)" and "[Setting policies for your enterprise](/admin/policies)."
|
||||||
|
|
||||||
|
For more information about the management of enterprise accounts using the GraphQL API, see "[Enterprise accounts](/graphql/guides/managing-enterprise-accounts)."
|
||||||
|
|
||||||
{% if enterpriseServerVersions contains currentVersion %}
|
{% if enterpriseServerVersions contains currentVersion %}
|
||||||
|
|
||||||
|
|
|
@ -85,7 +85,7 @@ Unlike OAuth apps, GitHub Apps have targeted permissions that allow them to requ
|
||||||
|
|
||||||
| GitHub Apps | OAuth Apps |
|
| GitHub Apps | OAuth Apps |
|
||||||
| ----- | ----------- |
|
| ----- | ----------- |
|
||||||
| By default, GitHub Apps have a single webhook that receives the events they are configured to receive for every repository they have access to. | OAuth Apps request the webhook scope to create a repository webhook for each repository they needs to receive events from. |
|
| By default, GitHub Apps have a single webhook that receives the events they are configured to receive for every repository they have access to. | OAuth Apps request the webhook scope to create a repository webhook for each repository they need to receive events from. |
|
||||||
| GitHub Apps receive certain organization-level events with the organization member's permission. | OAuth Apps request the organization webhook scope to create an organization webhook for each organization they need to receive organization-level events from. |
|
| GitHub Apps receive certain organization-level events with the organization member's permission. | OAuth Apps request the organization webhook scope to create an organization webhook for each organization they need to receive organization-level events from. |
|
||||||
|
|
||||||
### Git access
|
### Git access
|
||||||
|
|
|
@ -13,8 +13,14 @@ versions:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
After your {% data variables.product.prodname_marketplace %} listing is created and approved, you'll provide payment details to {% data variables.product.product_name %} as part of the onboarding process.
|
After your {% data variables.product.prodname_marketplace %} listing for an app with a paid plan is created and approved, you'll provide payment details to {% data variables.product.product_name %} as part of the financial onboarding process.
|
||||||
|
|
||||||
Once your revenue reaches a minimum of $500 U.S. Dollars for the month, you'll receive an electronic payment from {% data variables.product.product_name %} for 75% of the sales price.
|
Once your revenue reaches a minimum of $500 US dollars for the month, you'll receive an electronic payment from {% data variables.product.company_short %}. This will be the income from marketplace transactions minus the amount charged by {% data variables.product.company_short %} to cover their running costs.
|
||||||
|
|
||||||
{% data reusables.apps.marketplace_revenue_share %}
|
For transactions made before January 1, 2021, {% data variables.product.company_short %} retains 25% of transaction income. For transactions made after that date, only 5% is retained by {% data variables.product.company_short %}. This change will be reflected in payments received from the end of January 2021 onward.
|
||||||
|
|
||||||
|
{% note %}
|
||||||
|
|
||||||
|
**Note:** For details of the current pricing and payment terms, see "[{% data variables.product.prodname_marketplace %} developer agreement](/github/site-policy/github-marketplace-developer-agreement)."
|
||||||
|
|
||||||
|
{% endnote %}
|
||||||
|
|
|
@ -30,4 +30,4 @@ To create and access the feedback pull request, you must enable the feedback pul
|
||||||
|
|
||||||
### Further reading
|
### Further reading
|
||||||
|
|
||||||
- "[Integrate {% data variables.product.prodname_classroom %} with an IDE](http://localhost:4000/en/free-pro-team@latest/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide)"
|
- "[Integrate {% data variables.product.prodname_classroom %} with an IDE](/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide)"
|
||||||
|
|
|
@ -24,7 +24,7 @@ We recommend reviewing the following caveats before you change the visibility of
|
||||||
* If you change a repository's visibility from internal to private, {% data variables.product.prodname_dotcom %} will remove forks that belong to any user without access to the newly private repository. {% if currentVersion == "free-pro-team@latest" or enterpriseServerVersions contains currentVersion %}The visibility of any forks will also change to private.{% elsif currentVersion == "github-ae@latest" %}If the internal repository has any forks, the visibility of the forks is already private.{% endif %} For more information, see "[What happens to forks when a repository is deleted or changes visibility?](/articles/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility)"{% if currentVersion == "free-pro-team@latest" %}
|
* If you change a repository's visibility from internal to private, {% data variables.product.prodname_dotcom %} will remove forks that belong to any user without access to the newly private repository. {% if currentVersion == "free-pro-team@latest" or enterpriseServerVersions contains currentVersion %}The visibility of any forks will also change to private.{% elsif currentVersion == "github-ae@latest" %}If the internal repository has any forks, the visibility of the forks is already private.{% endif %} For more information, see "[What happens to forks when a repository is deleted or changes visibility?](/articles/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility)"{% if currentVersion == "free-pro-team@latest" %}
|
||||||
* If you're using {% data variables.product.prodname_free_user %} for user accounts or organizations, some features won't be available in the repository after you change the visibility to private. {% data reusables.gated-features.more-info %}{% endif %}
|
* If you're using {% data variables.product.prodname_free_user %} for user accounts or organizations, some features won't be available in the repository after you change the visibility to private. {% data reusables.gated-features.more-info %}{% endif %}
|
||||||
* Any published {% data variables.product.prodname_pages %} site will be automatically unpublished.{% if currentVersion == "free-pro-team@latest" %} If you added a custom domain to the {% data variables.product.prodname_pages %} site, you should remove or update your DNS records before making the repository private, to avoid the risk of a domain takeover. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %}{% if currentVersion == "free-pro-team@latest" %}
|
* Any published {% data variables.product.prodname_pages %} site will be automatically unpublished.{% if currentVersion == "free-pro-team@latest" %} If you added a custom domain to the {% data variables.product.prodname_pages %} site, you should remove or update your DNS records before making the repository private, to avoid the risk of a domain takeover. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %}{% if currentVersion == "free-pro-team@latest" %}
|
||||||
* {% data variables.product.prodname_dotcom %} will no longer included the repository in the {% data variables.product.prodname_archive %}. For more information, see "[About archiving content and data on {% data variables.product.prodname_dotcom %}](/github/creating-cloning-and-archiving-repositories/about-archiving-content-and-data-on-github#about-the-github-archive-program)."{% endif %}{% if enterpriseServerVersions contains currentVersion %}
|
* {% data variables.product.prodname_dotcom %} will no longer include the repository in the {% data variables.product.prodname_archive %}. For more information, see "[About archiving content and data on {% data variables.product.prodname_dotcom %}](/github/creating-cloning-and-archiving-repositories/about-archiving-content-and-data-on-github#about-the-github-archive-program)."{% endif %}{% if enterpriseServerVersions contains currentVersion %}
|
||||||
* Anonymous Git read access is no longer available. For more information, see "[Enabling anonymous Git read access for a repository](/enterprise/{{ currentVersion }}/user/articles/enabling-anonymous-git-read-access-for-a-repository)."{% endif %}
|
* Anonymous Git read access is no longer available. For more information, see "[Enabling anonymous Git read access for a repository](/enterprise/{{ currentVersion }}/user/articles/enabling-anonymous-git-read-access-for-a-repository)."{% endif %}
|
||||||
|
|
||||||
{% if currentVersion == "free-pro-team@latest" or currentVersion == "github-ae@latest" or currentVersion ver_gt "enterprise-server@2.19" %}
|
{% if currentVersion == "free-pro-team@latest" or currentVersion == "github-ae@latest" or currentVersion ver_gt "enterprise-server@2.19" %}
|
||||||
|
|
|
@ -127,7 +127,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav
|
||||||
1. Ensure the ssh-agent is running. You can use the "Auto-launching the ssh-agent" instructions in "[Working with SSH key passphrases](/articles/working-with-ssh-key-passphrases)", or start it manually:
|
1. Ensure the ssh-agent is running. You can use the "Auto-launching the ssh-agent" instructions in "[Working with SSH key passphrases](/articles/working-with-ssh-key-passphrases)", or start it manually:
|
||||||
```shell
|
```shell
|
||||||
# start the ssh-agent in the background
|
# start the ssh-agent in the background
|
||||||
$ eval $(ssh-agent -s)
|
$ eval `ssh-agent -s`
|
||||||
> Agent pid 59566
|
> Agent pid 59566
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ When you test your connection, you'll need to authenticate this action using you
|
||||||
> Are you sure you want to continue connecting (yes/no)?
|
> Are you sure you want to continue connecting (yes/no)?
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Verify that the fingerprint in the message you see matches one of the messages in step 2, then type `yes`:
|
3. Verify that the fingerprint in the message you see matches {% if currentVersion == "free-pro-team@latest" %}[{% data variables.product.prodname_dotcom %}'s RSA public key fingerprint](/github/authenticating-to-github/githubs-ssh-key-fingerprints){% else %} your enterprise's public key fingerprint{% endif %}. If it does, then type `yes`:
|
||||||
```shell
|
```shell
|
||||||
> Hi <em>username</em>! You've successfully authenticated, but GitHub does not
|
> Hi <em>username</em>! You've successfully authenticated, but GitHub does not
|
||||||
> provide shell access.
|
> provide shell access.
|
||||||
|
|
|
@ -3,7 +3,7 @@ title: Creating a pull request from a fork
|
||||||
intro: You can create a pull request to propose changes you've made to a fork of an upstream repository.
|
intro: You can create a pull request to propose changes you've made to a fork of an upstream repository.
|
||||||
redirect_from:
|
redirect_from:
|
||||||
- /articles/creating-a-pull-request-from-a-fork
|
- /articles/creating-a-pull-request-from-a-fork
|
||||||
permissions: Anyone with write access to a repository can create a pull request from user-owned fork.
|
permissions: Anyone with write access to a repository can create a pull request from a user-owned fork.
|
||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '*'
|
enterprise-server: '*'
|
||||||
|
|
|
@ -83,16 +83,6 @@ For more information about specifying build steps, see "[Configuring the {% data
|
||||||
|
|
||||||
The {% data variables.product.prodname_codeql %} `autobuild` feature uses heuristics to build the code in a repository, however, sometimes this approach results in incomplete analysis of a repository. For example, when multiple `build.sh` commands exist in a single repository, the analysis may not complete since the `autobuild` step will only execute one of the commands. The solution is to replace the `autobuild` step with build steps which build all of the source code which you wish to analyze. For more information, see "[Configuring the {% data variables.product.prodname_codeql %} workflow for compiled languages](/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-the-codeql-workflow-for-compiled-languages#adding-build-steps-for-a-compiled-language)."
|
The {% data variables.product.prodname_codeql %} `autobuild` feature uses heuristics to build the code in a repository, however, sometimes this approach results in incomplete analysis of a repository. For example, when multiple `build.sh` commands exist in a single repository, the analysis may not complete since the `autobuild` step will only execute one of the commands. The solution is to replace the `autobuild` step with build steps which build all of the source code which you wish to analyze. For more information, see "[Configuring the {% data variables.product.prodname_codeql %} workflow for compiled languages](/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-the-codeql-workflow-for-compiled-languages#adding-build-steps-for-a-compiled-language)."
|
||||||
|
|
||||||
### Error: "Server error"
|
|
||||||
|
|
||||||
If the run of a workflow for {% data variables.product.prodname_code_scanning %} fails due to a server error, try running the workflow again. If the problem persists, contact {% data variables.contact.contact_support %}.
|
|
||||||
|
|
||||||
### Error: "Out of disk" or "Out of memory"
|
|
||||||
|
|
||||||
On very large projects, {% data variables.product.prodname_codeql %} may run out of disk or memory on the runner.
|
|
||||||
{% if currentVersion == "free-pro-team@latest" %}If you encounter this issue on a hosted {% data variables.product.prodname_actions %} runner, contact {% data variables.contact.contact_support %} so that we can investigate the problem.
|
|
||||||
{% else %}If you encounter this issue, try increasing the memory on the runner.{% endif %}
|
|
||||||
|
|
||||||
### The build takes too long
|
### The build takes too long
|
||||||
|
|
||||||
If your build with {% data variables.product.prodname_codeql %} analysis takes too long to run, there are several approaches you can try to reduce the build time.
|
If your build with {% data variables.product.prodname_codeql %} analysis takes too long to run, there are several approaches you can try to reduce the build time.
|
||||||
|
@ -127,3 +117,53 @@ If you are analyzing code written in Python, you may see different results depen
|
||||||
On GitHub-hosted runners that use Linux, the {% data variables.product.prodname_codeql_workflow %} tries to install and analyze Python dependencies, which could lead to more results. To disable the auto-install, add `setup-python-dependencies: false` to the "Initialize CodeQL" step of the workflow. For more information about configuring the analysis of Python dependencies, see "[Analyzing Python dependencies](/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#analyzing-python-dependencies)."
|
On GitHub-hosted runners that use Linux, the {% data variables.product.prodname_codeql_workflow %} tries to install and analyze Python dependencies, which could lead to more results. To disable the auto-install, add `setup-python-dependencies: false` to the "Initialize CodeQL" step of the workflow. For more information about configuring the analysis of Python dependencies, see "[Analyzing Python dependencies](/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#analyzing-python-dependencies)."
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
### Error: "Server error"
|
||||||
|
|
||||||
|
If the run of a workflow for {% data variables.product.prodname_code_scanning %} fails due to a server error, try running the workflow again. If the problem persists, contact {% data variables.contact.contact_support %}.
|
||||||
|
|
||||||
|
### Error: "Out of disk" or "Out of memory"
|
||||||
|
|
||||||
|
On very large projects, {% data variables.product.prodname_codeql %} may run out of disk or memory on the runner.
|
||||||
|
{% if currentVersion == "free-pro-team@latest" %}If you encounter this issue on a hosted {% data variables.product.prodname_actions %} runner, contact {% data variables.contact.contact_support %} so that we can investigate the problem.
|
||||||
|
{% else %}If you encounter this issue, try increasing the memory on the runner.{% endif %}
|
||||||
|
|
||||||
|
### Warning: "git checkout HEAD^2 is no longer necessary"
|
||||||
|
|
||||||
|
If you're using an old {% data variables.product.prodname_codeql %} workflow you may get the following warning in the output from the "Initialize {% data variables.product.prodname_codeql %}" action:
|
||||||
|
|
||||||
|
```
|
||||||
|
Warning: 1 issue was detected with this workflow: git checkout HEAD^2 is no longer
|
||||||
|
necessary. Please remove this step as Code Scanning recommends analyzing the merge
|
||||||
|
commit for best results.
|
||||||
|
```
|
||||||
|
|
||||||
|
Fix this by removing the following lines from the {% data variables.product.prodname_codeql %} workflow. These lines were included in the `steps` section of the `Analyze` job in initial versions of the {% data variables.product.prodname_codeql %} workflow.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
with:
|
||||||
|
# We must fetch at least the immediate parents so that if this is
|
||||||
|
# a pull request then we can checkout the head.
|
||||||
|
fetch-depth: 2
|
||||||
|
|
||||||
|
# If this run was triggered by a pull request event, then checkout
|
||||||
|
# the head of the pull request instead of the merge commit.
|
||||||
|
- run: git checkout HEAD^2
|
||||||
|
if: {% raw %}${{ github.event_name == 'pull_request' }}{% endraw %}
|
||||||
|
```
|
||||||
|
|
||||||
|
The revised `steps` section of the workflow will look like this:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Initializes the {% data variables.product.prodname_codeql %} tools for scanning.
|
||||||
|
- name: Initialize {% data variables.product.prodname_codeql %}
|
||||||
|
uses: github/codeql-action/init@v1
|
||||||
|
|
||||||
|
...
|
||||||
|
```
|
||||||
|
|
||||||
|
For more information about editing the {% data variables.product.prodname_codeql %} workflow file, see "[Configuring {% data variables.product.prodname_code_scanning %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#editing-a-code-scanning-workflow)."
|
|
@ -78,9 +78,11 @@ The best way to resolve this error is to merge or close some of the existing pul
|
||||||
|
|
||||||
#### {% data variables.product.prodname_dependabot %} can't resolve your dependency files
|
#### {% data variables.product.prodname_dependabot %} can't resolve your dependency files
|
||||||
|
|
||||||
**Version updates only.** If {% data variables.product.prodname_dependabot %} attempts to check whether dependency references need to be updated in a repository, but can't access one or more of the referenced files, you will see the error message "{% data variables.product.prodname_dependabot %} can't resolve your LANGUAGE dependency files".
|
If {% data variables.product.prodname_dependabot %} attempts to check whether dependency references need to be updated in a repository, but can't access one or more of the referenced files, the operation will fail with the error message "{% data variables.product.prodname_dependabot %} can't resolve your LANGUAGE dependency files." The API error type is `git_dependencies_not_reachable`.
|
||||||
|
|
||||||
{% data reusables.dependabot.private-dependencies-note %} Additionally, {% data variables.product.prodname_dependabot %} doesn't support private {% data variables.product.prodname_dotcom %} dependencies for all package managers. For more information, see "[About Dependabot version updates](/github/administering-a-repository/about-dependabot-version-updates#supported-repositories-and-ecosystems)."
|
To allow {% data variables.product.prodname_dependabot %} to update the dependency references successfully, make sure that all of the referenced dependencies are hosted at accessible locations.
|
||||||
|
|
||||||
|
**Version updates only.** {% data reusables.dependabot.private-dependencies-note %} Additionally, {% data variables.product.prodname_dependabot %} doesn't support private {% data variables.product.prodname_dotcom %} dependencies for all package managers. For more information, see "[About Dependabot version updates](/github/administering-a-repository/about-dependabot-version-updates#supported-repositories-and-ecosystems)."
|
||||||
|
|
||||||
### Triggering a {% data variables.product.prodname_dependabot %} pull request manually
|
### Triggering a {% data variables.product.prodname_dependabot %} pull request manually
|
||||||
|
|
||||||
|
|
|
@ -92,7 +92,6 @@ Deleting a label will remove the label from issues and pull requests.
|
||||||
{% data reusables.project-management.delete-label %}
|
{% data reusables.project-management.delete-label %}
|
||||||
|
|
||||||
### Further reading
|
### Further reading
|
||||||
- "[About labels](/articles/about-labels)"
|
|
||||||
- "[Filtering issues and pull requests by labels](/articles/filtering-issues-and-pull-requests-by-labels)"{% if currentVersion == "free-pro-team@latest" or enterpriseServerVersions contains currentVersion %}
|
- "[Filtering issues and pull requests by labels](/articles/filtering-issues-and-pull-requests-by-labels)"{% if currentVersion == "free-pro-team@latest" or enterpriseServerVersions contains currentVersion %}
|
||||||
- "[Managing default labels for repositories in your organization](/articles/managing-default-labels-for-repositories-in-your-organization)"{% endif %}{% if currentVersion == "free-pro-team@latest" %}
|
- "[Managing default labels for repositories in your organization](/articles/managing-default-labels-for-repositories-in-your-organization)"{% endif %}{% if currentVersion == "free-pro-team@latest" %}
|
||||||
- "[Encouraging helpful contributions to your project with labels](/github/building-a-strong-community/encouraging-helpful-contributions-to-your-project-with-labels)"{% endif %}
|
- "[Encouraging helpful contributions to your project with labels](/github/building-a-strong-community/encouraging-helpful-contributions-to-your-project-with-labels)"{% endif %}
|
||||||
|
|
|
@ -39,7 +39,9 @@ The page that's displayed allows you to enable or disable security and analysis
|
||||||
|
|
||||||
### Allowing Dependabot to access private repositories
|
### Allowing Dependabot to access private repositories
|
||||||
|
|
||||||
{% data variables.product.prodname_dependabot %} can check for outdated dependency references in a project and automatically generate a pull request to update them. To do this, {% data variables.product.prodname_dependabot %} must have access to the targeted dependency files. By default, {% data variables.product.prodname_dependabot %} can't update dependencies that are located in private repositories. However, if a dependency is in a private {% data variables.product.prodname_dotcom %} repository within the same organization as the project that uses that dependency, you can allow {% data variables.product.prodname_dependabot %} to update the version successfully by giving it access to the host repository. For more information, including details of limitations to private dependency support, see "[About Dependabot version updates](/github/administering-a-repository/about-dependabot-version-updates)."
|
{% data variables.product.prodname_dependabot %} can check for outdated dependency references in a project and automatically generate a pull request to update them. To do this, {% data variables.product.prodname_dependabot %} must have access to all of the targeted dependency files. Typically, version updates will fail if one or more dependencies are inaccessible.
|
||||||
|
|
||||||
|
By default, {% data variables.product.prodname_dependabot %} can't update dependencies that are located in private repositories. However, if a dependency is in a private {% data variables.product.prodname_dotcom %} repository within the same organization as the project that uses that dependency, you can allow {% data variables.product.prodname_dependabot %} to update the version successfully by giving it access to the host repository. For more information, including details of limitations to private dependency support, see "[About Dependabot version updates](/github/administering-a-repository/about-dependabot-version-updates)."
|
||||||
|
|
||||||
1. Go to the security and analysis settings for your organization. For more information, see "[Displaying the security and analysis settings](#displaying-the-security-and-analysis-settings)."
|
1. Go to the security and analysis settings for your organization. For more information, see "[Displaying the security and analysis settings](#displaying-the-security-and-analysis-settings)."
|
||||||
1. In the "{% data variables.product.prodname_dependabot %} repository access" section, click the settings button **{% octicon "gear" aria-label="The Gear icon" %}**.
|
1. In the "{% data variables.product.prodname_dependabot %} repository access" section, click the settings button **{% octicon "gear" aria-label="The Gear icon" %}**.
|
||||||
|
|
|
@ -8,7 +8,7 @@ versions:
|
||||||
|
|
||||||
**THESE TERMS AND CONDITIONS (THE "AGREEMENT") GOVERN YOUR PARTICIPATION IN GITHUB’S MARKETPLACE PROGRAM. BY ENROLLING TO PARTICIPATE IN THE MARKETPLACE PROGRAM OR BY CLICKING “I ACCEPT” BELOW, YOU ARE CONFIRMING THAT YOU UNDERSTAND THIS AGREEMENT, AND THAT YOU ACCEPT ALL OF ITS TERMS AND CONDITIONS. IF YOU ARE ENTERING INTO THIS AGREEMENT ON BEHALF OF A COMPANY OR OTHER LEGAL ENTITY, YOU REPRESENT THAT YOU HAVE THE LEGAL AUTHORITY TO BIND THE ENTITY TO THIS AGREEMENT, IN WHICH CASE “YOU” WILL MEAN THE ENTITY YOU REPRESENT.**
|
**THESE TERMS AND CONDITIONS (THE "AGREEMENT") GOVERN YOUR PARTICIPATION IN GITHUB’S MARKETPLACE PROGRAM. BY ENROLLING TO PARTICIPATE IN THE MARKETPLACE PROGRAM OR BY CLICKING “I ACCEPT” BELOW, YOU ARE CONFIRMING THAT YOU UNDERSTAND THIS AGREEMENT, AND THAT YOU ACCEPT ALL OF ITS TERMS AND CONDITIONS. IF YOU ARE ENTERING INTO THIS AGREEMENT ON BEHALF OF A COMPANY OR OTHER LEGAL ENTITY, YOU REPRESENT THAT YOU HAVE THE LEGAL AUTHORITY TO BIND THE ENTITY TO THIS AGREEMENT, IN WHICH CASE “YOU” WILL MEAN THE ENTITY YOU REPRESENT.**
|
||||||
|
|
||||||
Effective Date: July 21, 2020
|
Effective Date: January 1, 2021
|
||||||
|
|
||||||
### 1. DEFINITIONS
|
### 1. DEFINITIONS
|
||||||
|
|
||||||
|
@ -143,7 +143,7 @@ In the event that your Listing is involuntarily removed because it is defective,
|
||||||
|
|
||||||
**6.1** GitHub will be the merchant of record for Developer Products purchased by End Users via Marketplace.
|
**6.1** GitHub will be the merchant of record for Developer Products purchased by End Users via Marketplace.
|
||||||
|
|
||||||
**6.2** Prices for Marketplace Listings of Developer Applications will be set in US Dollars (USD). Developer has complete control over setting pricing for each Listing, and once set, such pricing cannot be changed. You may retire a pricing plan for an existing Listing and add a new pricing plan for such Listing, provided that such new pricing plan shall not negatively impact existing End Users. The prices you set for Developer Products will determine the amount of payment you will receive. GitHub will remit 75% of the sale price in USD without reduction for Taxes except for any withholding taxes that are required under applicable law. The remaining 25% of the sales price will be allotted to and retained by GitHub. At the end of each month and upon reaching a minimum value of $500 USD, GitHub will remit your share of payments.
|
**6.2** Prices for Marketplace Listings of Developer Applications will be set in US Dollars (USD). Developer has complete control over setting pricing for each Listing, and once set, such pricing cannot be changed. You may retire a pricing plan for an existing Listing and add a new pricing plan for such Listing, provided that such new pricing plan shall not negatively impact existing End Users. The prices you set for Developer Products will determine the amount of payment you will receive. GitHub will remit 95% of the sale price in USD without reduction for Taxes except for any withholding taxes that are required under applicable law. The remaining 5% of the sales price will be allotted to and retained by GitHub. At the end of each month and upon reaching a minimum value of $500 USD, GitHub will remit your share of payments.
|
||||||
|
|
||||||
**6.3** Refund Requirements. You will be responsible for specifying the terms and conditions regarding refunds to your End Users. In no event shall GitHub be responsible for providing any support for refunds, nor shall GitHub be liable for payment of any refund.
|
**6.3** Refund Requirements. You will be responsible for specifying the terms and conditions regarding refunds to your End Users. In no event shall GitHub be responsible for providing any support for refunds, nor shall GitHub be liable for payment of any refund.
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
---
|
---
|
||||||
|
|
||||||
Effective date: **December 19, 2020**
|
Effective date: **December 30, 2020**
|
||||||
|
|
||||||
GitHub provides a great deal of transparency regarding how we use your data, how we collect your data, and with whom we share your data. To that end, we provide this page, which details [our subprocessors](#github-subprocessors), and how we use [cookies](#cookies-on-github).
|
GitHub provides a great deal of transparency regarding how we use your data, how we collect your data, and with whom we share your data. To that end, we provide this page, which details [our subprocessors](#github-subprocessors), and how we use [cookies](#cookies-on-github).
|
||||||
|
|
||||||
|
@ -36,7 +36,6 @@ When we share your information with third party subprocessors, such as our vendo
|
||||||
| Microsoft | Microsoft Services | United States | United States |
|
| Microsoft | Microsoft Services | United States | United States |
|
||||||
| Monday.com | Team collaboration and project management platform | United States | Israel |
|
| Monday.com | Team collaboration and project management platform | United States | Israel |
|
||||||
| Nexmo | SMS notification provider | United States | United States |
|
| Nexmo | SMS notification provider | United States | United States |
|
||||||
| Oracle | Corporate financial system | United States | United States |
|
|
||||||
| Salesforce.com | Customer relations management | United States | United States |
|
| Salesforce.com | Customer relations management | United States | United States |
|
||||||
| Sendgrid | Transactional mail services provider | United States | United States |
|
| Sendgrid | Transactional mail services provider | United States | United States |
|
||||||
| Sentry.io | Application monitoring provider | United States | United States |
|
| Sentry.io | Application monitoring provider | United States | United States |
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
---
|
---
|
||||||
title: Deleting a container image
|
title: Deleting a container image
|
||||||
intro: 'You can delete a version of a private container image using GraphQL or on {% data variables.product.prodname_dotcom %}.'
|
intro: 'You can delete a specific version or all versions of a private or public container image on {% data variables.product.prodname_dotcom %}.'
|
||||||
product: '{% data reusables.gated-features.packages %}'
|
product: '{% data reusables.gated-features.packages %}'
|
||||||
redirect_from:
|
redirect_from:
|
||||||
- /packages/managing-container-images-with-github-container-registry/deleting-a-container-image
|
- /packages/managing-container-images-with-github-container-registry/deleting-a-container-image
|
||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
---
|
---
|
||||||
|
@ -20,18 +20,46 @@ When deleting public packages, be aware that you may break projects that depend
|
||||||
|
|
||||||
### Deleting a version of a user-owned container image on {% data variables.product.prodname_dotcom %}
|
### Deleting a version of a user-owned container image on {% data variables.product.prodname_dotcom %}
|
||||||
|
|
||||||
|
To only delete specific versions of a container image, you can use these steps. To delete an entire package, see "[Deleting all versions of a user-owned container image on {% data variables.product.prodname_dotcom %}](#deleting-all-versions-of-a-user-owned-container-image-on-github)."
|
||||||
|
|
||||||
{% data reusables.package_registry.package-settings-from-user-level %}
|
{% data reusables.package_registry.package-settings-from-user-level %}
|
||||||
5. On the left, click **Manage versions**.
|
5. On the left, click **Manage versions**.
|
||||||
5. To the right of the version you want to delete, click **Delete**.
|
6. Optionally, to ensure you're seeing all of your package versions, use the "Type" drop down menu and select **All**.
|
||||||
![Delete package button](/assets/images/help/package-registry/delete-package-button.png)
|
![Package version type drop down menu showing option to list all versions](/assets/images/help/package-registry/make-all-container-versions-visible.png)
|
||||||
|
5. To the right of the version you want to delete, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} and select **Delete version**.
|
||||||
|
![Delete package version button](/assets/images/help/package-registry/delete-container-package-version.png)
|
||||||
6. To confirm deletion, type the package name and click **I understand the consequences, delete this version**.
|
6. To confirm deletion, type the package name and click **I understand the consequences, delete this version**.
|
||||||
![Confirm package deletion button](/assets/images/help/package-registry/confirm-package-deletion.png)
|
![Confirm package deletion button](/assets/images/help/package-registry/confirm-container-package-version-deletion.png)
|
||||||
|
|
||||||
### Deleting a version of an organization-owned container image on {% data variables.product.prodname_dotcom %}
|
### Deleting a version of an organization-owned container image on {% data variables.product.prodname_dotcom %}
|
||||||
|
|
||||||
|
To only delete specific versions of a container image that you have admin , you can use these steps. To delete an entire package, see "[Deleting all versions of an organization-owned container image on {% data variables.product.prodname_dotcom %}](#deleting-all-versions-of-an-organization-owned-container-image-on-github)."
|
||||||
|
|
||||||
{% data reusables.package_registry.package-settings-from-org-level %}
|
{% data reusables.package_registry.package-settings-from-org-level %}
|
||||||
5. On the left, click **Manage versions**.
|
5. On the left, click **Manage versions**.
|
||||||
5. To the right of the version you want to delete, click **Delete**.
|
6. Optionally, to ensure you're seeing all of your package versions, use the "Type" drop down menu and select **All**.
|
||||||
![Delete package button](/assets/images/help/package-registry/delete-package-button.png)
|
![Package version type drop down menu showing option to list all versions](/assets/images/help/package-registry/make-all-container-versions-visible.png)
|
||||||
|
5. To the right of the version you want to delete, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} and select **Delete version**.
|
||||||
|
![Delete package version button](/assets/images/help/package-registry/delete-container-package-version.png)
|
||||||
6. To confirm deletion, type the package name and click **I understand the consequences, delete this version**.
|
6. To confirm deletion, type the package name and click **I understand the consequences, delete this version**.
|
||||||
![Confirm package deletion button](/assets/images/help/package-registry/confirm-package-deletion.png)
|
![Confirm package version deletion button](/assets/images/help/package-registry/confirm-container-package-version-deletion.png)
|
||||||
|
|
||||||
|
### Deleting all versions of a user-owned container image on {% data variables.product.prodname_dotcom %}
|
||||||
|
|
||||||
|
{% data reusables.package_registry.package-settings-from-user-level %}
|
||||||
|
5. On the left, click **Options**.
|
||||||
|
!["Options" menu option](/assets/images/help/package-registry/options-for-container-settings.png)
|
||||||
|
6. Under "Danger zone", click **Delete this package**.
|
||||||
|
![Delete package version button](/assets/images/help/package-registry/delete-container-package-button.png)
|
||||||
|
6. To confirm deletion, type the package name and click **I understand the consequences, delete this package**.
|
||||||
|
![Confirm package version deletion button](/assets/images/help/package-registry/confirm-container-package-deletion.png)
|
||||||
|
|
||||||
|
### Deleting all versions of an organization-owned container image on {% data variables.product.prodname_dotcom %}
|
||||||
|
|
||||||
|
{% data reusables.package_registry.package-settings-from-org-level %}
|
||||||
|
5. On the left, click **Options**.
|
||||||
|
!["Options" menu option](/assets/images/help/package-registry/options-for-container-settings.png)
|
||||||
|
6. Under "Danger zone", click **Delete this package**.
|
||||||
|
![Delete package button](/assets/images/help/package-registry/delete-container-package-button.png)
|
||||||
|
6. To confirm deletion, type the package name and click **I understand the consequences, delete this package**.
|
||||||
|
![Confirm package deletion button](/assets/images/help/package-registry/confirm-container-package-deletion.png)
|
||||||
|
|
|
@ -240,7 +240,7 @@ Error code name | Description
|
||||||
-----------|-----------|
|
-----------|-----------|
|
||||||
`missing` | A resource does not exist.
|
`missing` | A resource does not exist.
|
||||||
`missing_field` | A required field on a resource has not been set.
|
`missing_field` | A required field on a resource has not been set.
|
||||||
`invalid` | The formatting of a field is invalid. Review the documentation for the for more specific information.
|
`invalid` | The formatting of a field is invalid. Review the documentation for more specific information.
|
||||||
`already_exists` | Another resource has the same value as this field. This can happen in resources that must have some unique key (such as label names).
|
`already_exists` | Another resource has the same value as this field. This can happen in resources that must have some unique key (such as label names).
|
||||||
`unprocessable` | The inputs provided were invalid.
|
`unprocessable` | The inputs provided were invalid.
|
||||||
|
|
||||||
|
@ -271,7 +271,7 @@ Verb | Description
|
||||||
`HEAD` | Can be issued against any resource to get just the HTTP header info.
|
`HEAD` | Can be issued against any resource to get just the HTTP header info.
|
||||||
`GET` | Used for retrieving resources.
|
`GET` | Used for retrieving resources.
|
||||||
`POST` | Used for creating resources.
|
`POST` | Used for creating resources.
|
||||||
`PATCH` | Used for updating resources with partial JSON data. For instance, an Issue resource has `title` and `body` attributes. A PATCH request may accept one or more of the attributes to update the resource. PATCH is a relatively new and uncommon HTTP verb, so resource endpoints also accept `POST` requests.
|
`PATCH` | Used for updating resources with partial JSON data. For instance, an Issue resource has `title` and `body` attributes. A `PATCH` request may accept one or more of the attributes to update the resource.
|
||||||
`PUT` | Used for replacing resources or collections. For `PUT` requests with no `body` attribute, be sure to set the `Content-Length` header to zero.
|
`PUT` | Used for replacing resources or collections. For `PUT` requests with no `body` attribute, be sure to set the `Content-Length` header to zero.
|
||||||
`DELETE` |Used for deleting resources.
|
`DELETE` |Used for deleting resources.
|
||||||
|
|
||||||
|
|
|
@ -135,12 +135,12 @@ _Search_
|
||||||
- [`PATCH /repos/:owner/:repo`](/rest/reference/repos#update-a-repository) (:write)
|
- [`PATCH /repos/:owner/:repo`](/rest/reference/repos#update-a-repository) (:write)
|
||||||
- [`DELETE /repos/:owner/:repo`](/rest/reference/repos#delete-a-repository) (:write)
|
- [`DELETE /repos/:owner/:repo`](/rest/reference/repos#delete-a-repository) (:write)
|
||||||
{% if currentVersion == "free-pro-team@latest" %}
|
{% if currentVersion == "free-pro-team@latest" %}
|
||||||
- [`Get GET /repos/:owner/:repo/actions/runners/downloads`](/rest/reference/actions#list-runner-applications-for-a-repository) (:read)
|
- [`GET /repos/:owner/:repo/actions/runners/downloads`](/rest/reference/actions#list-runner-applications-for-a-repository) (:read)
|
||||||
- [`GET /repos/:owner/:repo/actions/runners`](/rest/reference/actions#list-self-hosted-runners-for-a-repository) (:read)
|
- [`GET /repos/:owner/:repo/actions/runners`](/rest/reference/actions#list-self-hosted-runners-for-a-repository) (:read)
|
||||||
- [`GET /repos/:owner/:repo/actions/runners/:runner_id`](/rest/reference/actions#get-a-self-hosted-runner-for-a-repository) (:read)
|
- [`GET /repos/:owner/:repo/actions/runners/:runner_id`](/rest/reference/actions#get-a-self-hosted-runner-for-a-repository) (:read)
|
||||||
- [`DELETE /repos/:owner/:repo/actions/runners/:runner_id`](/rest/reference/actions#delete-a-self-hosted-runner-from-a-repository) (:write)
|
- [`DELETE /repos/:owner/:repo/actions/runners/:runner_id`](/rest/reference/actions#delete-a-self-hosted-runner-from-a-repository) (:write)
|
||||||
- [`POST /repos/:owner/:repo/actions/runners/registration-token`](/rest/reference/actions#create-a-registration-token-for-a-repository) (:write)
|
- [`POST /repos/:owner/:repo/actions/runners/registration-token`](/rest/reference/actions#create-a-registration-token-for-a-repository) (:write)
|
||||||
- [`POST /repos/:owner/:repo/actions/runners/remove-token`](/rest/reference/actions#create-a-remove-token-for-a-repository) (:write)git
|
- [`POST /repos/:owner/:repo/actions/runners/remove-token`](/rest/reference/actions#create-a-remove-token-for-a-repository) (:write)
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if currentVersion == "free-pro-team@latest" %}
|
{% if currentVersion == "free-pro-team@latest" %}
|
||||||
- [`PUT /repos/:owner/:repo/automated-security-fixes`](/rest/reference/repos#enable-automated-security-fixes) (:write)
|
- [`PUT /repos/:owner/:repo/automated-security-fixes`](/rest/reference/repos#enable-automated-security-fixes) (:write)
|
||||||
|
@ -472,7 +472,7 @@ _Assignees_
|
||||||
|
|
||||||
_Events_
|
_Events_
|
||||||
- [`GET /repos/:owner/:repo/issues/:issue_number/events`](/rest/reference/issues#list-issue-events) (:read)
|
- [`GET /repos/:owner/:repo/issues/:issue_number/events`](/rest/reference/issues#list-issue-events) (:read)
|
||||||
- [Get an issue event](/rest/reference/issues#get-an-issue-event) (:read)
|
- [`GET /repos/:owner/:repo/issues/events/:event_id`](/rest/reference/issues#get-an-issue-event) (:read)
|
||||||
|
|
||||||
_Labels_
|
_Labels_
|
||||||
- [`GET /repos/:owner/:repo/issues/:issue_number/labels`](/rest/reference/issues#list-labels-for-an-issue) (:read)
|
- [`GET /repos/:owner/:repo/issues/:issue_number/labels`](/rest/reference/issues#list-labels-for-an-issue) (:read)
|
||||||
|
|
|
@ -27,14 +27,14 @@ If a staging deployment is pending for more than 5-10min, try the following:
|
||||||
2. If that doesn't work, trigger a new staging deployment by pushing an empty commit on the command line:
|
2. If that doesn't work, trigger a new staging deployment by pushing an empty commit on the command line:
|
||||||
|
|
||||||
```
|
```
|
||||||
$ git commit --allow-empty -m'empty commit to redeploy staging'
|
$ git commit --allow-empty -m 'empty commit to redeploy staging'
|
||||||
```
|
```
|
||||||
|
|
||||||
### CI stalled or stuck
|
### CI stalled or stuck
|
||||||
:yellow_heart: If tests are stuck yellow for more than an hour, rerun CI by pushing an empty commit on the command line:
|
:yellow_heart: If tests are stuck yellow for more than an hour, rerun CI by pushing an empty commit on the command line:
|
||||||
|
|
||||||
```
|
```
|
||||||
$ git commit --allow-empty -m'empty commit to rerun CI'
|
$ git commit --allow-empty -m 'empty commit to rerun CI'
|
||||||
```
|
```
|
||||||
|
|
||||||
## Troubleshooting failed deployments and CI
|
## Troubleshooting failed deployments and CI
|
||||||
|
|
|
@ -128,7 +128,7 @@
|
||||||
- term: commit
|
- term: commit
|
||||||
description: >-
|
description: >-
|
||||||
A commit, or "revision", is an individual change to a file (or set of
|
A commit, or "revision", is an individual change to a file (or set of
|
||||||
files). When you make a commit to save your work, Git creates a unique ID (a.k.a. the "SHA" or "hash") that allows you to keep record of the specific changes commited along with who made them and when. Commits usually contain a
|
files). When you make a commit to save your work, Git creates a unique ID (a.k.a. the "SHA" or "hash") that allows you to keep record of the specific changes committed along with who made them and when. Commits usually contain a
|
||||||
commit message which is a brief description of what changes were made.
|
commit message which is a brief description of what changes were made.
|
||||||
- term: commit author
|
- term: commit author
|
||||||
description: The user who makes the commit.
|
description: The user who makes the commit.
|
||||||
|
@ -140,7 +140,7 @@
|
||||||
description: Also known as SHA. A 40-character checksum hash that identifies the commit.
|
description: Also known as SHA. A 40-character checksum hash that identifies the commit.
|
||||||
- term: commit message
|
- term: commit message
|
||||||
description: >-
|
description: >-
|
||||||
Short, descriptive text that accompanys a commit and communicates the change
|
Short, descriptive text that accompanies a commit and communicates the change
|
||||||
the commit is introducing.
|
the commit is introducing.
|
||||||
- term: compare branch
|
- term: compare branch
|
||||||
description: >-
|
description: >-
|
||||||
|
@ -406,9 +406,9 @@
|
||||||
convention and is not required.
|
convention and is not required.
|
||||||
- term: master
|
- term: master
|
||||||
description: >-
|
description: >-
|
||||||
The default branch in many Git repositories. By default, when you create
|
The default branch in many Git repositories. By default, when you create
|
||||||
a new Git repository on the command line a branch called `master` is created.
|
a new Git repository on the command line a branch called `master` is created.
|
||||||
Many tools now use an alternative name for the default branch. For example,
|
Many tools now use an alternative name for the default branch. For example,
|
||||||
when you create a new repository on GitHub the default branch is called `main`.
|
when you create a new repository on GitHub the default branch is called `main`.
|
||||||
- term: Members graph
|
- term: Members graph
|
||||||
description: A repository graph that shows all the forks of a repository.
|
description: A repository graph that shows all the forks of a repository.
|
||||||
|
@ -458,7 +458,7 @@
|
||||||
- term: notification
|
- term: notification
|
||||||
description: >-
|
description: >-
|
||||||
Updates, delivered by either the web or email depending on your settings,
|
Updates, delivered by either the web or email depending on your settings,
|
||||||
that give you information about the activites you're interested in.
|
that give you information about the activities you're interested in.
|
||||||
- term: OAuth App
|
- term: OAuth App
|
||||||
description: >-
|
description: >-
|
||||||
A third-party application that uses access tokens rather than passwords to
|
A third-party application that uses access tokens rather than passwords to
|
||||||
|
|
|
@ -101,7 +101,7 @@
|
||||||
- term: CPU
|
- term: CPU
|
||||||
description: Central processing unit.
|
description: Central processing unit.
|
||||||
- term: credential helper
|
- term: credential helper
|
||||||
description: A program that stores and fets Git credentials.
|
description: A program that stores and fetches Git credentials.
|
||||||
- term: creole
|
- term: creole
|
||||||
description: >-
|
description: >-
|
||||||
A lightweight markup language, aimed at being a common markup language for
|
A lightweight markup language, aimed at being a common markup language for
|
||||||
|
@ -683,7 +683,7 @@
|
||||||
made but not yet committed.
|
made but not yet committed.
|
||||||
- term: WYSIWYG
|
- term: WYSIWYG
|
||||||
description: >-
|
description: >-
|
||||||
What You See Is What You Get. An acryonym meaning the text on the screen
|
What You See Is What You Get. An acronym meaning the text on the screen
|
||||||
looks exactly as it will when it's rendered.
|
looks exactly as it will when it's rendered.
|
||||||
- term: XenServer
|
- term: XenServer
|
||||||
description: A virtualization platform.
|
description: A virtualization platform.
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
{% note %}
|
|
||||||
|
|
||||||
**Note:** As part of the [Marketplace Developer Agreement](/articles/github-marketplace-developer-agreement/), {% data variables.product.prodname_dotcom %} receives a 25% revenue share from {% data variables.product.prodname_marketplace %} listings.
|
|
||||||
|
|
||||||
{% endnote %}
|
|
|
@ -1,3 +1,3 @@
|
||||||
When running version updates, {% data variables.product.prodname_dependabot %} must be able to resolve all dependencies from their source to verify that version updates have been successful. If your manifest or lock files contain any dependencies hosted in private {% data variables.product.prodname_dotcom %} repositories within your organization, {% data variables.product.prodname_dependabot %} must be able to access those repositories. Organization owners can configure this. For more information, 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#allowing-dependabot-to-access-private-repositories)."
|
When running security or version updates, {% data variables.product.prodname_dependabot %} some ecosystems must be able to resolve all dependencies from their source to verify that updates have been successful. If your manifest or lock files contain any private dependencies, {% data variables.product.prodname_dependabot %} must be able to access the location at which those dependencies are hosted. Organization owners can grant {% data variables.product.prodname_dependabot %} access to private repositories containing dependencies for a project within the same organization. For more information, 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#allowing-dependabot-to-access-private-repositories)."
|
||||||
|
|
||||||
Currently, {% data variables.product.prodname_dependabot %} version updates doesn't support manifest or lock files that contain any dependencies hosted in private registries, or in private {% data variables.product.prodname_dotcom %} repositories that belong to a different organization than the dependent project.
|
Currently, {% data variables.product.prodname_dependabot %} version updates doesn't support manifest or lock files that contain any dependencies hosted in private registries, or in private {% data variables.product.prodname_dotcom %} repositories that belong to a different organization than the dependent project.
|
||||||
|
|
|
@ -25,7 +25,7 @@ Terraform: `terraform` | **✓** | |
|
||||||
|
|
||||||
-`yarn` (v1 only) (specify `npm`)
|
-`yarn` (v1 only) (specify `npm`)
|
||||||
|
|
||||||
-`.gradle.tks` files, for Kotlin projects (specify `gradle`)
|
-`.gradle.kts` files, for Kotlin projects (specify `gradle`)
|
||||||
|
|
||||||
-`pipenv`, `pip-compile`, and `poetry` (specify `pip`)
|
-`pipenv`, `pip-compile`, and `poetry` (specify `pip`)
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
| Priority | Description | Examples |
|
| Priority | Description | Examples |
|
||||||
| :---: | --- | --- |
|
| :---: | --- | --- |
|
||||||
| {% data variables.product.support_ticket_priority_urgent %} - Sev A | {% data variables.product.product_name %} is inaccessible or failing entirely, and the failure directly impacts the operation of your business.<br/><br/>_After you file a support ticket, reach out to {% data variables.contact.github_support %} via phone._ | <ul><li>Errors or outages that affect core Git or web application functionality for all users</li><li>Severe network or performance degradation for majority of users</li><li>Full or rapidly filling storage</li><li>Known security incidents or a breach of access</li></ul> |
|
| {% data variables.product.support_ticket_priority_urgent %} - Sev A | {% data variables.product.product_name %} is inaccessible or failing entirely, and the failure directly impacts the operation of your business.<br/><br/>_After you file a support ticket, reach out to {% data variables.contact.github_support %} via phone._ | <ul><li>Errors or outages that affect core Git or web application functionality for all users</li><li>Severe network or performance degradation for majority of users</li><li>Full or rapidly filling storage</li><li>Known security incidents or a breach of access</li></ul> |
|
||||||
| {% data variables.product.support_ticket_priority_high %} - Sev B | {% data variables.product.product_name %} is failing in a production environment, with limited impact to your business processes, or only affecting certain customers. | <ul><li>Performance degradation that reduces productivity for many users</li><li>Reduced redundancy concerns from failures or service degradation</li><li>Production-impacting bugs or errors</li><li>{% data variables.product.product_name %} configuraton security concerns</li></ul> |
|
| {% data variables.product.support_ticket_priority_high %} - Sev B | {% data variables.product.product_name %} is failing in a production environment, with limited impact to your business processes, or only affecting certain customers. | <ul><li>Performance degradation that reduces productivity for many users</li><li>Reduced redundancy concerns from failures or service degradation</li><li>Production-impacting bugs or errors</li><li>{% data variables.product.product_name %} configuration security concerns</li></ul> |
|
||||||
| {% data variables.product.support_ticket_priority_normal %} - Sev C | {% data variables.product.product_name %} is experiencing limited or moderate issues and errors with {% data variables.product.product_name %}, or you have general concerns or questions about the operation of {% data variables.product.product_name %}. | <ul><li>Advice on using {% data variables.product.prodname_dotcom %} APIs and features, or questions about integrating business workflows</li><li>Issues with user tools and data collection methods</li><li>Upgrades</li><li>Bug reports, general security questions, or other feature related questions</li> |
|
| {% data variables.product.support_ticket_priority_normal %} - Sev C | {% data variables.product.product_name %} is experiencing limited or moderate issues and errors with {% data variables.product.product_name %}, or you have general concerns or questions about the operation of {% data variables.product.product_name %}. | <ul><li>Advice on using {% data variables.product.prodname_dotcom %} APIs and features, or questions about integrating business workflows</li><li>Issues with user tools and data collection methods</li><li>Upgrades</li><li>Bug reports, general security questions, or other feature related questions</li> |
|
||||||
| {% data variables.product.support_ticket_priority_low %} - Sev D| {% data variables.product.product_name %} is functioning as expected, however, you have a question or suggestion about {% data variables.product.product_name %} that is not time-sensitive, or does not otherwise block the productivity of your team. | <ul><li>Feature requests and product feedback</li><li>General questions on overall configuration or use of {% data variables.product.product_name %}</li><li>Notifying {% data variables.contact.github_support %} of any planned changes</li></ul> |
|
| {% data variables.product.support_ticket_priority_low %} - Sev D| {% data variables.product.product_name %} is functioning as expected, however, you have a question or suggestion about {% data variables.product.product_name %} that is not time-sensitive, or does not otherwise block the productivity of your team. | <ul><li>Feature requests and product feedback</li><li>General questions on overall configuration or use of {% data variables.product.product_name %}</li><li>Notifying {% data variables.contact.github_support %} of any planned changes</li></ul> |
|
||||||
|
|
|
@ -256,7 +256,7 @@
|
||||||
- automation
|
- automation
|
||||||
- title: Distribute funding in free and open source projects
|
- title: Distribute funding in free and open source projects
|
||||||
description: Continuous Distribution of funding to project contributors and dependencies
|
description: Continuous Distribution of funding to project contributors and dependencies
|
||||||
languages: 'Python, Docerfile, Shell, Ruby'
|
languages: 'Python, Dockerfile, Shell, Ruby'
|
||||||
href: protontypes/libreselery
|
href: protontypes/libreselery
|
||||||
tags:
|
tags:
|
||||||
- sponsors
|
- sponsors
|
||||||
|
@ -273,7 +273,7 @@
|
||||||
- pull request
|
- pull request
|
||||||
- title: Codeowner validator
|
- title: Codeowner validator
|
||||||
description: Ensures the correctness of your GitHub CODEOWNERS file, supports public and private GitHub repositories and also GitHub Enterprise installations
|
description: Ensures the correctness of your GitHub CODEOWNERS file, supports public and private GitHub repositories and also GitHub Enterprise installations
|
||||||
languages: 'Go, Shell, Makefile, Docerfile'
|
languages: 'Go, Shell, Makefile, Dockerfile'
|
||||||
href: mszostok/codeowners-validator
|
href: mszostok/codeowners-validator
|
||||||
tags:
|
tags:
|
||||||
- codeowners
|
- codeowners
|
||||||
|
|
|
@ -7,6 +7,6 @@
|
||||||
|
|
||||||
<form class="mb-0">
|
<form class="mb-0">
|
||||||
<div id="search-input-container" aria-hidden="true">
|
<div id="search-input-container" aria-hidden="true">
|
||||||
<!-- Aloglia instantsearch.js will add a search input here -->
|
<!-- Algolia instantsearch.js will add a search input here -->
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -53,7 +53,7 @@ const resultTemplate = (item) => {
|
||||||
</div>
|
</div>
|
||||||
`
|
`
|
||||||
|
|
||||||
// Santize the link's href attribute using the DOM API to prevent XSS
|
// Sanitize the link's href attribute using the DOM API to prevent XSS
|
||||||
const fragment = document.createRange().createContextualFragment(html)
|
const fragment = document.createRange().createContextualFragment(html)
|
||||||
fragment.querySelector('a').setAttribute('href', item.modifiedURL)
|
fragment.querySelector('a').setAttribute('href', item.modifiedURL)
|
||||||
const div = document.createElement('div')
|
const div = document.createElement('div')
|
||||||
|
@ -69,7 +69,7 @@ export default function () {
|
||||||
const opts = {
|
const opts = {
|
||||||
|
|
||||||
// https://www.algolia.com/apps/ZI5KPY1HBE/dashboard
|
// https://www.algolia.com/apps/ZI5KPY1HBE/dashboard
|
||||||
// This API key is public. There's also a private API key for writing to the Aloglia API
|
// This API key is public. There's also a private API key for writing to the Algolia API
|
||||||
searchClient: algoliasearch('ZI5KPY1HBE', '685df617246c3a10abba589b4599288f'),
|
searchClient: algoliasearch('ZI5KPY1HBE', '685df617246c3a10abba589b4599288f'),
|
||||||
|
|
||||||
// There's an index for every version/language combination
|
// There's an index for every version/language combination
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
// This module takes cheerio page object and divides it into sections
|
// This module takes cheerio page object and divides it into sections
|
||||||
// using H1,h2,h3 heading elements as section delimiters. The text
|
// using H1,h2,h3 heading elements as section delimiters. The text
|
||||||
// that follows each heading becomes the content of the searh record.
|
// that follows each heading becomes the content of the search record.
|
||||||
|
|
||||||
const { chain } = require('lodash')
|
const { chain } = require('lodash')
|
||||||
const urlPrefix = 'https://docs.github.com'
|
const urlPrefix = 'https://docs.github.com'
|
||||||
|
|
|
@ -46,7 +46,7 @@ module.exports = async function syncAlgoliaIndices (opts = {}) {
|
||||||
|
|
||||||
console.log(`Building indices for ${opts.language || 'all languages'} and ${opts.version || 'all versions'}.\n`)
|
console.log(`Building indices for ${opts.language || 'all languages'} and ${opts.version || 'all versions'}.\n`)
|
||||||
|
|
||||||
// Exlude WIP pages, hidden pages, index pages, etc
|
// Exclude WIP pages, hidden pages, index pages, etc
|
||||||
const indexablePages = await findIndexablePages()
|
const indexablePages = await findIndexablePages()
|
||||||
|
|
||||||
// Build and validate all indices
|
// Build and validate all indices
|
||||||
|
|
|
@ -20,7 +20,7 @@ function getApplicableVersions (frontmatterVersions, filepath) {
|
||||||
// enterprise-server: '>=2.19'
|
// enterprise-server: '>=2.19'
|
||||||
// enterprise-cloud: '*'
|
// enterprise-cloud: '*'
|
||||||
// private-instances: '*'
|
// private-instances: '*'
|
||||||
// ^ where each key correponds to a plan
|
// ^ where each key corresponds to a plan
|
||||||
Object.entries(frontmatterVersions)
|
Object.entries(frontmatterVersions)
|
||||||
.forEach(([plan, planValue]) => {
|
.forEach(([plan, planValue]) => {
|
||||||
// for each plan (e.g., enterprise-server), get matching versions from allVersions object
|
// for each plan (e.g., enterprise-server), get matching versions from allVersions object
|
||||||
|
|
|
@ -15,6 +15,12 @@ module.exports = function getMiniTocItems (html, maxHeadingLevel = 3) {
|
||||||
// - `platform` to show or hide platform-specific headings via client JS
|
// - `platform` to show or hide platform-specific headings via client JS
|
||||||
const items = headings
|
const items = headings
|
||||||
.get()
|
.get()
|
||||||
|
.filter(item => {
|
||||||
|
if (!item.parent) return true
|
||||||
|
// Hide any items that belong to a hidden div
|
||||||
|
const { attribs } = item.parent
|
||||||
|
return !('hidden' in attribs)
|
||||||
|
})
|
||||||
.map(item => {
|
.map(item => {
|
||||||
// remove any <span> tags including their content
|
// remove any <span> tags including their content
|
||||||
$('span').remove()
|
$('span').remove()
|
||||||
|
|
|
@ -57,7 +57,7 @@ class Page {
|
||||||
this.raw = this.raw.replace(': verdadero', ': true')
|
this.raw = this.raw.replace(': verdadero', ': true')
|
||||||
}
|
}
|
||||||
|
|
||||||
// parse fronmatter and save any errors for validation in the test suite
|
// parse frontmatter and save any errors for validation in the test suite
|
||||||
const { content, data, errors: frontmatterErrors } = frontmatter(this.raw, { filepath: this.fullPath })
|
const { content, data, errors: frontmatterErrors } = frontmatter(this.raw, { filepath: this.fullPath })
|
||||||
this.frontmatterErrors = frontmatterErrors
|
this.frontmatterErrors = frontmatterErrors
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,7 @@ module.exports = function getOldPathsFromPath (currentPath, languageCode, curren
|
||||||
.replace(`/enterprise/${latest}`, '/enterprise'))
|
.replace(`/enterprise/${latest}`, '/enterprise'))
|
||||||
|
|
||||||
// create old path /enterprise/foo from current path /enterprise/user/foo
|
// create old path /enterprise/foo from current path /enterprise/user/foo
|
||||||
// this supports old developer paths like /enteprise/webhooks with no /user in them
|
// this supports old developer paths like /enterprise/webhooks with no /user in them
|
||||||
if (currentPath.includes('/enterprise/')) {
|
if (currentPath.includes('/enterprise/')) {
|
||||||
oldPaths.add(currentPath
|
oldPaths.add(currentPath
|
||||||
.replace('/user/', '/'))
|
.replace('/user/', '/'))
|
||||||
|
|
|
@ -48,7 +48,7 @@ module.exports = function generateRedirectsForPermalinks (permalinks, redirectFr
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
// filter for uniqe entries only
|
// filter for unique entries only
|
||||||
Object.entries(redirects).forEach(([oldPath, newPath]) => {
|
Object.entries(redirects).forEach(([oldPath, newPath]) => {
|
||||||
if (oldPath === newPath) delete redirects[oldPath]
|
if (oldPath === newPath) delete redirects[oldPath]
|
||||||
})
|
})
|
||||||
|
|
|
@ -61,7 +61,7 @@ module.exports = function precompileRedirects (pageList, pageMap) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// given a developer route like `/enterprise/2.19/v3/activity`,
|
// given a developer route like `/enterprise/2.19/v3/activity`,
|
||||||
// add a veriation like `/enterprise/2.19/user/v3/activity`;
|
// add a variation like `/enterprise/2.19/user/v3/activity`;
|
||||||
// we need to do this because all links in content get rewritten
|
// we need to do this because all links in content get rewritten
|
||||||
// by lib/rewrite-local-links to include `/user`
|
// by lib/rewrite-local-links to include `/user`
|
||||||
if (developerRoute.includes('/enterprise/')) {
|
if (developerRoute.includes('/enterprise/')) {
|
||||||
|
@ -72,7 +72,7 @@ module.exports = function precompileRedirects (pageList, pageMap) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// given a developer route like `/v3/gists/comments`,
|
// given a developer route like `/v3/gists/comments`,
|
||||||
// add a veriation like `/free-pro-team@latest/v3/gists/comments`;
|
// add a variation like `/free-pro-team@latest/v3/gists/comments`;
|
||||||
// again, we need to do this because all links in content get rewritten
|
// again, we need to do this because all links in content get rewritten
|
||||||
if (!developerRoute.startsWith('/enterprise/')) {
|
if (!developerRoute.startsWith('/enterprise/')) {
|
||||||
const developerRouteWithVersion = slash(path.join(nonEnterpriseDefaultVersion, developerRoute))
|
const developerRouteWithVersion = slash(path.join(nonEnterpriseDefaultVersion, developerRoute))
|
||||||
|
|
|
@ -4,5 +4,5 @@ module.exports = async function triggerError (req, res, next) {
|
||||||
// prevent this from being used in production
|
// prevent this from being used in production
|
||||||
if (process.env.NODE_ENV === 'production') return next()
|
if (process.env.NODE_ENV === 'production') return next()
|
||||||
|
|
||||||
throw new Error('OH NOEZ')
|
throw new Error('Intentional error')
|
||||||
}
|
}
|
||||||
|
|
|
@ -290,7 +290,7 @@ This script finds all Heroku staging apps and pings them to make sure they're al
|
||||||
|
|
||||||
### [`prevent-pushes-to-main.js`](prevent-pushes-to-main.js)
|
### [`prevent-pushes-to-main.js`](prevent-pushes-to-main.js)
|
||||||
|
|
||||||
This script is intended to be used as a git "prepush" hook. If the current branch is main, it will exit unsuccesfully and prevent the push.
|
This script is intended to be used as a git "prepush" hook. If the current branch is main, it will exit unsuccessfully and prevent the push.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
|
@ -47,7 +47,7 @@ if (!fs.existsSync(newSchemaFile)) {
|
||||||
process.exit(1)
|
process.exit(1)
|
||||||
}
|
}
|
||||||
|
|
||||||
// the other files are objects with vers3091iuions as keys, so we need to require them
|
// the other files are objects with versions as keys, so we need to require them
|
||||||
const previewsFile = path.join(graphqlStaticDir, 'previews.json')
|
const previewsFile = path.join(graphqlStaticDir, 'previews.json')
|
||||||
const changesFile = path.join(graphqlStaticDir, 'upcoming-changes.json')
|
const changesFile = path.join(graphqlStaticDir, 'upcoming-changes.json')
|
||||||
const objectsFile = path.join(graphqlStaticDir, 'prerendered-objects.json')
|
const objectsFile = path.join(graphqlStaticDir, 'prerendered-objects.json')
|
||||||
|
|
|
@ -348,7 +348,7 @@ module.exports = async function processSchemas (idl, previewsPerVersion) {
|
||||||
// add non-schema scalars and sort all scalars alphabetically
|
// add non-schema scalars and sort all scalars alphabetically
|
||||||
data.scalars = sortBy(data.scalars.concat(externalScalars), 'name')
|
data.scalars = sortBy(data.scalars.concat(externalScalars), 'name')
|
||||||
|
|
||||||
// sort all the types alphebatically
|
// sort all the types alphabetically
|
||||||
data.queries.connections = sortBy(data.queries.connections, 'name')
|
data.queries.connections = sortBy(data.queries.connections, 'name')
|
||||||
data.queries.fields = sortBy(data.queries.fields, 'name')
|
data.queries.fields = sortBy(data.queries.fields, 'name')
|
||||||
data.mutations = sortBy(data.mutations, 'name')
|
data.mutations = sortBy(data.mutations, 'name')
|
||||||
|
|
|
@ -5,7 +5,7 @@ const { execSync } = require('child_process')
|
||||||
// [start-readme]
|
// [start-readme]
|
||||||
|
|
||||||
// This script is intended to be used as a git "prepush" hook.
|
// This script is intended to be used as a git "prepush" hook.
|
||||||
// If the current branch is main, it will exit unsuccesfully and prevent the push.
|
// If the current branch is main, it will exit unsuccessfully and prevent the push.
|
||||||
|
|
||||||
// [end-readme]
|
// [end-readme]
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ require('dotenv').config()
|
||||||
// Ignore this hook in GitHub Actions workflows
|
// Ignore this hook in GitHub Actions workflows
|
||||||
if (process.env.CI) process.exit()
|
if (process.env.CI) process.exit()
|
||||||
|
|
||||||
// Allow this hook to be overriden with an enviroment variable
|
// Allow this hook to be overriden with an environment variable
|
||||||
if (process.env.ALLOW_TRANSLATION_COMMITS) process.exit()
|
if (process.env.ALLOW_TRANSLATION_COMMITS) process.exit()
|
||||||
|
|
||||||
const { execSync } = require('child_process')
|
const { execSync } = require('child_process')
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
font-size: 90%;
|
font-size: 90%;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
/* We want to keep table-layout: auto so that column widths dynamically adjust;
|
/* We want to keep table-layout: auto so that column widths dynamically adjust;
|
||||||
otherwise entries get needlessly smushed into narrow columns. As a workaround,
|
otherwise entries get needlessly squashed into narrow columns. As a workaround,
|
||||||
we use javascripts/wrap-code-terms.js to prevent some reference table content
|
we use javascripts/wrap-code-terms.js to prevent some reference table content
|
||||||
from expanding beyond the horizontal boundaries of the parent element. */
|
from expanding beyond the horizontal boundaries of the parent element. */
|
||||||
table-layout: auto;
|
table-layout: auto;
|
||||||
|
|
|
@ -106,7 +106,7 @@ describe('server', () => {
|
||||||
test('renders a 500 page when errors are thrown', async () => {
|
test('renders a 500 page when errors are thrown', async () => {
|
||||||
const $ = await getDOM('/_500')
|
const $ = await getDOM('/_500')
|
||||||
expect($('h1').text()).toBe('Ooops!')
|
expect($('h1').text()).toBe('Ooops!')
|
||||||
expect($('code').text().startsWith('Error: OH NOEZ')).toBe(true)
|
expect($('code').text().startsWith('Error: Intentional error')).toBe(true)
|
||||||
expect($('code').text().includes(path.join('node_modules', 'express', 'lib', 'router'))).toBe(true)
|
expect($('code').text().includes(path.join('node_modules', 'express', 'lib', 'router'))).toBe(true)
|
||||||
expect($.text().includes('Still need help?')).toBe(true)
|
expect($.text().includes('Still need help?')).toBe(true)
|
||||||
expect($.res.statusCode).toBe(500)
|
expect($.res.statusCode).toBe(500)
|
||||||
|
|
|
@ -1,139 +1,129 @@
|
||||||
---
|
---
|
||||||
title: 複合実行ステップ アクションの作成
|
title: Creating a composite run steps action
|
||||||
intro: 'このガイドでは、複合実行ステップ アクションを構築する方法について説明します。'
|
intro: 'In this guide, you''ll learn how to build a composite run steps action.'
|
||||||
product: '{% data reusables.gated-features.actions %}'
|
product: '{% data reusables.gated-features.actions %}'
|
||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data variables.product.prodname_actions %} の支払いを管理する
|
{% data reusables.actions.enterprise-beta %}
|
||||||
{% data variables.product.prodname_dotcom %}は、macOSランナーのホストに[MacStadium](https://www.macstadium.com/)を使用しています。
|
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||||
|
|
||||||
### はじめに
|
### Introduction
|
||||||
|
|
||||||
このガイドでは、パッケージ化された複合実行ステップ アクションを作成および使用するために必要な基本的なコンポーネントについて説明します。 アクションのパッケージ化に必要なコンポーネントのガイドに焦点を当てるため、アクションのコードの機能は最小限に留めます。 アクションは「ハローワールド」と「さよなら」を印刷するか、カスタム名を指定すると「こんにちは [who-to-greet]」と「さようなら」を出力します。 このアクションでは、乱数も `乱数` 出力変数にマップされ、 `goodbye.sh`という名前のスクリプトが実行されます。
|
In this guide, you'll learn about the basic components needed to create and use a packaged composite run steps action. To focus this guide on the components needed to package the action, the functionality of the action's code is minimal. The action prints "Hello World" and then "Goodbye", or if you provide a custom name, it prints "Hello [who-to-greet]" and then "Goodbye". The action also maps a random number to the `random-number` output variable, and runs a script named `goodbye.sh`.
|
||||||
|
|
||||||
このプロジェクトを完了したら、独自の複合実行ステップ アクションをビルドし、ワークフローでテストする方法を理解する必要があります。
|
Once you complete this project, you should understand how to build your own composite run steps action and test it in a workflow.
|
||||||
|
|
||||||
### 必要な環境
|
### Prerequisites
|
||||||
|
|
||||||
始める前に、{% data variables.product.product_name %} リポジトリを作成します。
|
Before you begin, you'll create a {% data variables.product.product_name %} repository.
|
||||||
|
|
||||||
1. {% data variables.product.product_location %} に新しいパブリックリポジトリを作成します。 任意のリポジトリ名を選択するか、hello-world コンポジット実行ステップアクション</code> 例 `次の方法を使用できます。 これらのファイルは、プロジェクトを {% data variables.product.product_name %}にプッシュした後で追加できます。 詳しい情報については、「<a href="/articles/creating-a-new-repository">新しいリポジトリの作成</a>」を参照してください。</p></li>
|
1. Create a new public repository on {% data variables.product.product_location %}. You can choose any repository name, or use the following `hello-world-composite-run-steps-action` example. You can add these files after your project has been pushed to {% data variables.product.product_name %}. For more information, see "[Create a new repository](/articles/creating-a-new-repository)."
|
||||||
<li><p spaces-before="0">リポジトリをお手元のコンピューターにクローンします。 詳しい情報については<a href="/articles/cloning-a-repository">リポジトリのクローン</a>を参照してください。</p></li>
|
|
||||||
<li><p spaces-before="0">ターミナルから、ディレクトリを新しいリポジトリに変更します。
|
|
||||||
<pre><code class="shell"> cd ハローワールドコンポジット実行ステップアクション
|
|
||||||
`</pre>
|
|
||||||
|
|
||||||
2. `hello-world-composite-run-steps-action` リポジトリで、 `goodbye.sh`という名前の新しいファイルを作成し、次のコード例を追加します。
|
1. Clone your repository to your computer. For more information, see "[Cloning a repository](/articles/cloning-a-repository)."
|
||||||
|
|
||||||
```bash
|
1. From your terminal, change directories into your new repository.
|
||||||
エコー"さようなら"
|
|
||||||
|
```shell
|
||||||
|
cd hello-world-composite-run-steps-action
|
||||||
```
|
```
|
||||||
|
|
||||||
3. ターミナルから、`goodbye.sh` を実行可能にします。
|
2. In the `hello-world-composite-run-steps-action` repository, create a new file called `goodbye.sh`, and add the following example code:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
echo "Goodbye"
|
||||||
|
```
|
||||||
|
|
||||||
|
3. From your terminal, make `goodbye.sh` executable.
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
chmod +x goodbye.sh
|
chmod +x goodbye.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
1. 端末から、 `goodbye.sh` ファイルをチェックインします。
|
1. From your terminal, check in your `goodbye.sh` file.
|
||||||
```shell
|
```shell
|
||||||
git を追加goodbye.sh
|
git add goodbye.sh
|
||||||
git コミット -m "さよならスクリプトを追加"
|
git commit -m "Add goodbye script"
|
||||||
git プッシュ
|
git push
|
||||||
```
|
```
|
||||||
|
|
||||||
### アクションのメタデータファイルの作成
|
### Creating an action metadata file
|
||||||
|
|
||||||
1. `hello-world-composite-run-steps-action` リポジトリで、action.yml</code> `という名前の新しいファイルを作成し、次のコード例を追加します。 この構文の詳細については、「<a href="/actions/creating-actions/metadata-syntax-for-github-actions#runs-for-composite-run-steps-actions"><code>実行` 」を参照</a>してください。
|
1. In the `hello-world-composite-run-steps-action` repository, create a new file called `action.yml` and add the following example code. For more information about this syntax, see "[`runs` for a composite run steps](/actions/creating-actions/metadata-syntax-for-github-actions#runs-for-composite-run-steps-actions)".
|
||||||
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
**アクション.yml**
|
**action.yml**
|
||||||
```yaml
|
```yaml
|
||||||
name:「 Hello World」
|
name: 'Hello World'
|
||||||
の説明:「 誰かに挨拶する」
|
description: 'Greet someone'
|
||||||
入力:
|
inputs:
|
||||||
誰が挨拶する:入力
|
who-to-greet: # id of input
|
||||||
説明の#id:「誰を迎えるか」が必要
|
description: 'Who to greet'
|
||||||
です:true
|
required: true
|
||||||
デフォルト
|
default: 'World'
|
||||||
:
|
outputs:
|
||||||
デフォルト:
|
random-number:
|
||||||
の乱数:説明:${{ steps.random-number-generator.outputs.random-id }}
|
description: "Random number"
|
||||||
の
|
value: ${{ steps.random-number-generator.outputs.random-id }}
|
||||||
値:
|
runs:
|
||||||
使用:
|
using: "composite"
|
||||||
|
steps:
|
||||||
- 実行:エコーこんにちは{{ inputs.who-to-greet }}。
|
- run: echo Hello ${{ inputs.who-to-greet }}.
|
||||||
シェル: バッシュ
|
shell: bash
|
||||||
- id: 乱数ジェネレータ
|
- id: random-number-generator
|
||||||
実行: echo "::セット出力名=ランダム id::$(エコー $RANDOM)"
|
run: echo "::set-output name=random-id::$(echo $RANDOM)"
|
||||||
シェル: バッシュ
|
shell: bash
|
||||||
- 実行: ${{ github.action_path }}/goodbye.sh
|
- run: ${{ github.action_path }}/goodbye.sh
|
||||||
シェル: bash
|
shell: bash
|
||||||
```
|
```
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
このファイルは、入力</code> に誰が挨拶 `を定義し、ランダムに生成された数値を <code>乱数` 出力変数にマップし、 `goodbye.sh` スクリプトを実行します。 また、複合実行ステップアクションの実行方法をランナーに指示します。
|
This file defines the `who-to-greet` input, maps the random generated number to the `random-number` output variable, and runs the `goodbye.sh` script. It also tells the runner how to execute the composite run steps action.
|
||||||
|
|
||||||
出力の管理の詳細については、「複合実行手順の出力</code> を[`する」</a>参照してください。 </p>
|
For more information about managing outputs, see "[`outputs` for a composite run steps](/actions/creating-actions/metadata-syntax-for-github-actions#outputs-for-composite-run-steps-actions)".
|
||||||
|
|
||||||
<p spaces-before="2"><code>github.action_path`の使用方法の詳細については、「github コンテキスト</code>](/actions/creating-actions/metadata-syntax-for-github-actions#outputs-for-composite-run-steps-actions)の
|
|
||||||
|
|
||||||
`」を参照してください。</p></li>
|
|
||||||
<li><p spaces-before="0">ターミナルから、<code>action.yml` ファイルをチェックインします。
|
|
||||||
|
|
||||||
|
For more information about how to use `github.action_path`, see "[`github context`](/actions/reference/context-and-expression-syntax-for-github-actions#github-context)".
|
||||||
|
|
||||||
|
1. From your terminal, check in your `action.yml` file.
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
git add action.yml
|
git add action.yml
|
||||||
git commit -m "Add action"
|
git commit -m "Add action"
|
||||||
git push
|
git push
|
||||||
```
|
```
|
||||||
</p></li>
|
|
||||||
|
|
||||||
1 ターミナルから、タグを追加します。 この例では、`v1` というタグを使用しています。 詳しい情報については、「[アクションについて](/actions/creating-actions/about-actions#using-release-management-for-actions)」を参照してください。
|
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)."
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
git tag -a -m "Description of this release" v1
|
git tag -a -m "Description of this release" v1
|
||||||
git push --follow-tags
|
git push --follow-tags
|
||||||
```
|
```
|
||||||
</ol>
|
|
||||||
|
|
||||||
|
### Testing out your action in a workflow
|
||||||
|
|
||||||
|
The following workflow code uses the completed hello world action that you made in "[Creating an action metadata file](/actions/creating-actions/creating-a-composite-run-steps-action#creating-an-action-metadata-file)".
|
||||||
|
|
||||||
### ワークフローでアクションを試す
|
Copy the workflow code into a `.github/workflows/main.yml` file in another repository, but replace `actions/hello-world-composite-run-steps-action@v1` with the repository and tag you created. You can also replace the `who-to-greet` input with your name.
|
||||||
|
|
||||||
次のワークフロー コードでは、「アクション メタデータ ファイルの作成」で行った完了した hello world アクション[使用](/actions/creating-actions/creating-a-composite-run-steps-action#creating-an-action-metadata-file)。
|
|
||||||
|
|
||||||
ワークフローコードを別のリポジトリの `.github/workflows/main.yml` ファイルにコピーしますが、`actions/hello-world-composite-run-steps-action@v1` は作成したリポジトリとタグに置き換えます。 `who-to-greet` 入力を自分の名前に置き換えることもできます。
|
|
||||||
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
|
**.github/workflows/main.yml**
|
||||||
**.github/ワークフロー/メイン.yml**
|
|
||||||
|
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
on: [push]
|
on: [push]
|
||||||
|
|
||||||
ジョブ:
|
jobs:
|
||||||
hello_world_job:
|
hello_world_job:
|
||||||
実行: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
名: こんにちは
|
name: A job to say hello
|
||||||
ステップを言うジョブ:
|
steps:
|
||||||
- 使用: アクション/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- id: foo
|
- id: foo
|
||||||
使用: アクション/ハローワールドコンポジットランステップaction@v1
|
uses: actions/hello-world-composite-run-steps-action@v1
|
||||||
:
|
with:
|
||||||
誰が挨拶: 'モナ・ザ・オクトキャット'
|
who-to-greet: 'Mona the Octocat'
|
||||||
- 実行: エコー乱数 ${{ steps.foo.outputs.random-number }}
|
- run: echo random-number ${{ steps.foo.outputs.random-number }}
|
||||||
シェル:
|
shell: bash
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
|
||||||
リポジトリから [**Actions**] タブをクリックして、最新のワークフロー実行を選択します。 出力には、「こんにちはモナオクトキャット」、"Goodbye"スクリプトの結果、および乱数が含まれている必要があります。
|
From your repository, click the **Actions** tab, and select the latest workflow run. The output should include: "Hello Mona the Octocat", the result of the "Goodbye" script, and a random number.
|
||||||
|
|