Merge branch 'main' of github.com:github/docs-internal into remove-fpt
1
.github/workflows/60-days-stale-check.yml
vendored
@@ -5,6 +5,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
stale:
|
stale:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/stale@af4072615903a8b031f986d25b1ae3bf45ec44d4
|
- uses: actions/stale@af4072615903a8b031f986d25b1ae3bf45ec44d4
|
||||||
|
|||||||
1
.github/workflows/automerge-dependencies.yml
vendored
@@ -14,6 +14,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
run:
|
run:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: tjenkinson/gh-action-auto-merge-dependency-updates@cee2ac0
|
- uses: tjenkinson/gh-action-auto-merge-dependency-updates@cee2ac0
|
||||||
|
|||||||
2
.github/workflows/automerge.yml
vendored
@@ -20,7 +20,7 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
automerge:
|
automerge:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
if: contains(github.event.pull_request.labels.*.name, 'automerge') || contains(github.event.pull_request.labels.*.name, 'autosquash')
|
if: (contains(github.event.pull_request.labels.*.name, 'automerge') || contains(github.event.pull_request.labels.*.name, 'autosquash')) && (github.repository == 'github/docs-internal' || github.repository == 'github/docs')
|
||||||
steps:
|
steps:
|
||||||
- name: automerge
|
- name: automerge
|
||||||
uses: 'pascalgn/automerge-action@c9bd182'
|
uses: 'pascalgn/automerge-action@c9bd182'
|
||||||
|
|||||||
1
.github/workflows/autoupdate-branch.yml
vendored
@@ -5,6 +5,7 @@ on:
|
|||||||
- main
|
- main
|
||||||
jobs:
|
jobs:
|
||||||
autoupdate:
|
autoupdate:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
name: autoupdate
|
name: autoupdate
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
2
.github/workflows/codeql.yml
vendored
@@ -11,8 +11,8 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
|
- uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
|
||||||
- uses: github/codeql-action/init@v1
|
- uses: github/codeql-action/init@v1
|
||||||
|
|||||||
1
.github/workflows/pa11y.yml
vendored
@@ -5,6 +5,7 @@ on:
|
|||||||
- cron: '25 17 * * *' # once a day at 17:25 UTC / 11:50 PST
|
- cron: '25 17 * * *' # once a day at 17:25 UTC / 11:50 PST
|
||||||
jobs:
|
jobs:
|
||||||
test:
|
test:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Check out repo
|
- name: Check out repo
|
||||||
|
|||||||
1
.github/workflows/repo-freeze-check.yml
vendored
@@ -16,6 +16,7 @@ env:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
check-freezer:
|
check-freezer:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
name: Prevent merging during deployment freezes
|
name: Prevent merging during deployment freezes
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
3
.github/workflows/repo-sync-stalls.yml
vendored
@@ -16,7 +16,8 @@ jobs:
|
|||||||
repo-sync-stalls:
|
repo-sync-stalls:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Check if repo sync is stalled
|
- if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
|
name: Check if repo sync is stalled
|
||||||
uses: actions/github-script@626af12fe9a53dc2972b48385e7fe7dec79145c9
|
uses: actions/github-script@626af12fe9a53dc2972b48385e7fe7dec79145c9
|
||||||
with:
|
with:
|
||||||
github-token: ${{ secrets.DOCUBOT_FR_PROJECT_BOARD_WORKFLOWS_REPO_ORG_READ_SCOPES }}
|
github-token: ${{ secrets.DOCUBOT_FR_PROJECT_BOARD_WORKFLOWS_REPO_ORG_READ_SCOPES }}
|
||||||
|
|||||||
1
.github/workflows/repo-sync.yml
vendored
@@ -26,6 +26,7 @@ jobs:
|
|||||||
exit 1 # prevents further steps from running
|
exit 1 # prevents further steps from running
|
||||||
|
|
||||||
repo-sync:
|
repo-sync:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
name: Repo Sync
|
name: Repo Sync
|
||||||
needs: check-freezer
|
needs: check-freezer
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|||||||
1
.github/workflows/site-policy-sync.yml
vendored
@@ -16,6 +16,7 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
# This workflow contains a single job called "build"
|
# This workflow contains a single job called "build"
|
||||||
copy-file:
|
copy-file:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
# The type of runner that the job will run on
|
# The type of runner that the job will run on
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
triage:
|
triage:
|
||||||
|
if: github.repository == 'github/docs-internal' || github.repository == 'github/docs'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
env:
|
env:
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 100 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 223 KiB After Width: | Height: | Size: 126 KiB |
|
Before Width: | Height: | Size: 214 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 508 KiB After Width: | Height: | Size: 499 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 343 KiB After Width: | Height: | Size: 337 KiB |
|
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 71 KiB |
BIN
assets/images/help/repository/delete-directory-button.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 156 KiB After Width: | Height: | Size: 156 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 115 KiB After Width: | Height: | Size: 63 KiB |
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 159 KiB After Width: | Height: | Size: 89 KiB |
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 242 KiB After Width: | Height: | Size: 235 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 9.1 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 7.0 KiB |
@@ -10,6 +10,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'overview'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ product: '{% data reusables.gated-features.actions %}'
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'reference'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
@@ -52,7 +53,7 @@ ENTRYPOINT ["echo $GITHUB_SHA"]
|
|||||||
```
|
```
|
||||||
|
|
||||||
If you want variable substitution, then either use the _shell_ form or execute a shell directly. For example, using the following _exec_ format, you can execute a shell to print the value stored in the `GITHUB_SHA` environment variable.
|
If you want variable substitution, then either use the _shell_ form or execute a shell directly. For example, using the following _exec_ format, you can execute a shell to print the value stored in the `GITHUB_SHA` environment variable.
|
||||||
|
|
||||||
```
|
```
|
||||||
ENTRYPOINT ["sh", "-c", "echo $GITHUB_SHA"]
|
ENTRYPOINT ["sh", "-c", "echo $GITHUB_SHA"]
|
||||||
````
|
````
|
||||||
@@ -60,32 +61,32 @@ ENTRYPOINT ["sh", "-c", "echo $GITHUB_SHA"]
|
|||||||
To supply `args` defined in the action's metadata file to a Docker container that uses the _exec_ form in the `ENTRYPOINT`, we recommend creating a shell script called `entrypoint.sh` that you call from the `ENTRYPOINT` instruction:
|
To supply `args` defined in the action's metadata file to a Docker container that uses the _exec_ form in the `ENTRYPOINT`, we recommend creating a shell script called `entrypoint.sh` that you call from the `ENTRYPOINT` instruction:
|
||||||
|
|
||||||
##### Example *Dockerfile*
|
##### Example *Dockerfile*
|
||||||
```
|
```
|
||||||
# Container image that runs your code
|
# Container image that runs your code
|
||||||
FROM debian:9.5-slim
|
FROM debian:9.5-slim
|
||||||
|
|
||||||
# Copies your code file from your action repository to the filesystem path `/` of the container
|
# Copies your code file from your action repository to the filesystem path `/` of the container
|
||||||
COPY entrypoint.sh /entrypoint.sh
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
|
||||||
# Executes `entrypoint.sh` when the Docker container starts up
|
# Executes `entrypoint.sh` when the Docker container starts up
|
||||||
ENTRYPOINT ["/entrypoint.sh"]
|
ENTRYPOINT ["/entrypoint.sh"]
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Example *entrypoint.sh* file
|
##### Example *entrypoint.sh* file
|
||||||
|
|
||||||
Using the example Dockerfile above, {% data variables.product.product_name %} will send the `args` configured in the action's metadata file as arguments to `entrypoint.sh`. Add the `#!/bin/sh` [shebang](https://en.wikipedia.org/wiki/Shebang_(Unix)) at the top of the `entrypoint.sh` file to explicitly use the system's [POSIX](https://en.wikipedia.org/wiki/POSIX)-compliant shell.
|
Using the example Dockerfile above, {% data variables.product.product_name %} will send the `args` configured in the action's metadata file as arguments to `entrypoint.sh`. Add the `#!/bin/sh` [shebang](https://en.wikipedia.org/wiki/Shebang_(Unix)) at the top of the `entrypoint.sh` file to explicitly use the system's [POSIX](https://en.wikipedia.org/wiki/POSIX)-compliant shell.
|
||||||
|
|
||||||
``` sh
|
``` sh
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
# `$*` expands the `args` supplied in an `array` individually
|
# `$*` expands the `args` supplied in an `array` individually
|
||||||
# or splits `args` in a string separated by whitespace.
|
# or splits `args` in a string separated by whitespace.
|
||||||
sh -c "echo $*"
|
sh -c "echo $*"
|
||||||
```
|
```
|
||||||
|
|
||||||
Your code must be executable. Make sure the `entrypoint.sh` file has `execute` permissions before using it in a workflow. You can modify the permission from your terminal using this command:
|
Your code must be executable. Make sure the `entrypoint.sh` file has `execute` permissions before using it in a workflow. You can modify the permission from your terminal using this command:
|
||||||
``` sh
|
``` sh
|
||||||
chmod +x entrypoint.sh
|
chmod +x entrypoint.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
When an `ENTRYPOINT` shell script is not executable, you'll receive an error similar to this:
|
When an `ENTRYPOINT` shell script is not executable, you'll receive an error similar to this:
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'reference'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
@@ -104,12 +105,12 @@ outputs:
|
|||||||
{% raw %}
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
outputs:
|
outputs:
|
||||||
random-number:
|
random-number:
|
||||||
description: "Random number"
|
description: "Random number"
|
||||||
value: ${{ steps.random-number-generator.outputs.random-id }}
|
value: ${{ steps.random-number-generator.outputs.random-id }}
|
||||||
runs:
|
runs:
|
||||||
using: "composite"
|
using: "composite"
|
||||||
steps:
|
steps:
|
||||||
- id: random-number-generator
|
- id: random-number-generator
|
||||||
run: echo "::set-output name=random-id::$(echo $RANDOM)"
|
run: echo "::set-output name=random-id::$(echo $RANDOM)"
|
||||||
shell: bash
|
shell: bash
|
||||||
@@ -159,7 +160,7 @@ runs:
|
|||||||
#### `pre-if`
|
#### `pre-if`
|
||||||
|
|
||||||
**Optional** Allows you to define conditions for the `pre:` action execution. The `pre:` action will only run if the conditions in `pre-if` are met. If not set, then `pre-if` defaults to `always()`.
|
**Optional** Allows you to define conditions for the `pre:` action execution. The `pre:` action will only run if the conditions in `pre-if` are met. If not set, then `pre-if` defaults to `always()`.
|
||||||
Note that the `step` context is unavailable, as no steps have run yet.
|
Note that the `step` context is unavailable, as no steps have run yet.
|
||||||
|
|
||||||
In this example, `cleanup.js` only runs on Linux-based runners:
|
In this example, `cleanup.js` only runs on Linux-based runners:
|
||||||
|
|
||||||
@@ -214,7 +215,7 @@ For example, this `cleanup.js` will only run on Linux-based runners:
|
|||||||
```yaml
|
```yaml
|
||||||
runs:
|
runs:
|
||||||
using: "composite"
|
using: "composite"
|
||||||
steps:
|
steps:
|
||||||
- run: ${{ github.action_path }}/test/script.sh
|
- run: ${{ github.action_path }}/test/script.sh
|
||||||
shell: bash
|
shell: bash
|
||||||
```
|
```
|
||||||
@@ -225,7 +226,7 @@ Alternatively, you can use `$GITHUB_ACTION_PATH`:
|
|||||||
```yaml
|
```yaml
|
||||||
runs:
|
runs:
|
||||||
using: "composite"
|
using: "composite"
|
||||||
steps:
|
steps:
|
||||||
- run: $GITHUB_ACTION_PATH/script.sh
|
- run: $GITHUB_ACTION_PATH/script.sh
|
||||||
shell: bash
|
shell: bash
|
||||||
```
|
```
|
||||||
@@ -254,12 +255,12 @@ For more information, see "[`github context`](/actions/reference/context-and-exp
|
|||||||
|
|
||||||
### `runs` for Docker actions
|
### `runs` for Docker actions
|
||||||
|
|
||||||
**Required** Configures the image used for the Docker action.
|
**Required** Configures the image used for the Docker action.
|
||||||
|
|
||||||
#### Example using a Dockerfile in your repository
|
#### Example using a Dockerfile in your repository
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
runs:
|
runs:
|
||||||
using: 'docker'
|
using: 'docker'
|
||||||
image: 'Dockerfile'
|
image: 'Dockerfile'
|
||||||
```
|
```
|
||||||
@@ -267,7 +268,7 @@ runs:
|
|||||||
#### Example using public Docker registry container
|
#### Example using public Docker registry container
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
runs:
|
runs:
|
||||||
using: 'docker'
|
using: 'docker'
|
||||||
image: 'docker://debian:stretch-slim'
|
image: 'docker://debian:stretch-slim'
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
- /actions/building-actions/publishing-actions-in-github-marketplace
|
- /actions/building-actions/publishing-actions-in-github-marketplace
|
||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
|
type: 'how_to'
|
||||||
---
|
---
|
||||||
|
|
||||||
You must accept the terms of service to publish actions in {% data variables.product.prodname_marketplace %}.
|
You must accept the terms of service to publish actions in {% data variables.product.prodname_marketplace %}.
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'how_to'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'overview'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'overview'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'overview'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ versions:
|
|||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
authors:
|
authors:
|
||||||
- potatoqualitee
|
- potatoqualitee
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ product: '{% data reusables.gated-features.actions %}'
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ redirect_from:
|
|||||||
- /actions/configuring-and-managing-workflows/caching-dependencies-to-speed-up-workflows
|
- /actions/configuring-and-managing-workflows/caching-dependencies-to-speed-up-workflows
|
||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
### About caching workflow dependencies
|
### About caching workflow dependencies
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -17,54 +17,33 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
learningTracks:
|
||||||
|
- getting_started
|
||||||
|
- continuous_integration
|
||||||
|
- continuous_deployment
|
||||||
|
- hosting_your_own_runners
|
||||||
|
- create_actions
|
||||||
|
layout: product-sublanding
|
||||||
---
|
---
|
||||||
|
<!-- {% link_in_list /about-continuous-integration %} -->
|
||||||
{% data reusables.actions.enterprise-beta %}
|
<!-- {% link_in_list /setting-up-continuous-integration-using-workflow-templates %} -->
|
||||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
<!-- {% link_in_list /building-and-testing-nodejs %} -->
|
||||||
|
<!-- {% link_in_list /building-and-testing-powershell %} -->
|
||||||
### Creating custom continuous integration workflows
|
<!-- {% link_in_list /building-and-testing-python %} -->
|
||||||
|
<!-- {% link_in_list /building-and-testing-ruby %} -->
|
||||||
You can use {% data variables.product.prodname_actions %} to create custom continuous integration (CI) workflows that build and test projects written in different programming languages.
|
<!-- {% link_in_list /building-and-testing-java-with-maven %} -->
|
||||||
|
<!-- {% link_in_list /building-and-testing-java-with-gradle %} -->
|
||||||
{% link_in_list /about-continuous-integration %}
|
<!-- {% link_in_list /building-and-testing-java-with-ant %} -->
|
||||||
{% link_in_list /setting-up-continuous-integration-using-workflow-templates %}
|
<!-- {% link_in_list /about-packaging-with-github-actions %} -->
|
||||||
{% link_in_list /building-and-testing-nodejs %}
|
<!-- {% link_in_list /publishing-nodejs-packages %} -->
|
||||||
{% link_in_list /building-and-testing-powershell %}
|
<!-- {% link_in_list /publishing-java-packages-with-maven %} -->
|
||||||
{% link_in_list /building-and-testing-python %}
|
<!-- {% link_in_list /publishing-java-packages-with-gradle %} -->
|
||||||
{% link_in_list /building-and-testing-ruby %}
|
<!-- {% link_in_list /publishing-docker-images %} -->
|
||||||
{% link_in_list /building-and-testing-java-with-maven %}
|
<!-- {% link_in_list /storing-workflow-data-as-artifacts %} -->
|
||||||
{% link_in_list /building-and-testing-java-with-gradle %}
|
<!-- {% link_in_list /caching-dependencies-to-speed-up-workflows %} -->
|
||||||
{% link_in_list /building-and-testing-java-with-ant %}
|
<!-- {% link_in_list /about-service-containers %} -->
|
||||||
|
<!-- {% link_in_list /creating-redis-service-containers %} -->
|
||||||
### Creating custom continuous deployment workflows
|
<!-- {% link_in_list /creating-postgresql-service-containers %} -->
|
||||||
|
<!-- {% link_in_list /deploying-to-amazon-elastic-container-service %} -->
|
||||||
You can use {% data variables.product.prodname_actions %} to create custom continuous deployment (CD) workflows that deploy projects to a number of cloud partner ecosystems.
|
<!-- {% link_in_list /deploying-to-azure-app-service %} -->
|
||||||
|
<!-- {% link_in_list /deploying-to-google-kubernetes-engine %} -->
|
||||||
{% link_in_list /deploying-to-amazon-elastic-container-service %}
|
|
||||||
{% link_in_list /deploying-to-azure-app-service %}
|
|
||||||
{% link_in_list /deploying-to-google-kubernetes-engine %}
|
|
||||||
|
|
||||||
### Publishing software packages
|
|
||||||
|
|
||||||
You can automate publishing software packages as part your continuous delivery (CD) workflow. Packages can be published to any package host and to {% data reusables.gated-features.packages %}.
|
|
||||||
|
|
||||||
{% link_in_list /about-packaging-with-github-actions %}
|
|
||||||
{% link_in_list /publishing-nodejs-packages %}
|
|
||||||
{% link_in_list /publishing-java-packages-with-maven %}
|
|
||||||
{% link_in_list /publishing-java-packages-with-gradle %}
|
|
||||||
{% link_in_list /publishing-docker-images %}
|
|
||||||
|
|
||||||
### Caching and storing workflow data
|
|
||||||
|
|
||||||
Cache dependencies and store artifacts to make your workflow runs more efficient.
|
|
||||||
|
|
||||||
{% link_in_list /storing-workflow-data-as-artifacts %}
|
|
||||||
{% link_in_list /caching-dependencies-to-speed-up-workflows %}
|
|
||||||
|
|
||||||
### Using service containers in a workflow
|
|
||||||
|
|
||||||
Connect services to your workflow using service containers.
|
|
||||||
|
|
||||||
{% link_in_list /about-service-containers %}
|
|
||||||
{% link_in_list /creating-redis-service-containers %}
|
|
||||||
{% link_in_list /creating-postgresql-service-containers %}
|
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
@@ -106,7 +107,7 @@ However, if you do provide the `repository` key, then the repository in that key
|
|||||||
|
|
||||||
To authenticate to the {% data variables.product.prodname_registry %} registry in your workflow, you can use the `GITHUB_TOKEN` from your repository. It is created automatically and has _read_ and _write_ permissions for packages in the repository where the workflow runs. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow)."
|
To authenticate to the {% data variables.product.prodname_registry %} registry in your workflow, you can use the `GITHUB_TOKEN` from your repository. It is created automatically and has _read_ and _write_ permissions for packages in the repository where the workflow runs. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow)."
|
||||||
|
|
||||||
If you want to publish your package to a different repository, you must use a personal access token (PAT) that has permission to write to packages in the destination repository. For more information, see "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)" and "[Encrypted secrets](http://localhost:4000/en/free-pro-team@latest/actions/reference/encrypted-secrets)."
|
If you want to publish your package to a different repository, you must use a personal access token (PAT) that has permission to write to packages in the destination repository. For more information, see "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)" and "[Encrypted secrets](/actions/reference/encrypted-secrets)."
|
||||||
|
|
||||||
#### Example workflow
|
#### Example workflow
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'overview'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
defaultPlatform: linux
|
defaultPlatform: linux
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -162,7 +163,7 @@ Stop-Service "{{ service_win_name }}"
|
|||||||
|
|
||||||
### Customizing the self-hosted runner service
|
### Customizing the self-hosted runner service
|
||||||
|
|
||||||
If you don't want to use the above default `systemd` service configuration, you can create a customized service or use whichever service mechanism you prefer. Consider using the `serviced` template at `actions-runner/bin/actions.runner.service.template` as a reference. If you use a customized service, the self-hosted runner service must always be invoked using the `runsvc.sh` entry point.
|
If you don't want to use the above default `systemd` service configuration, you can create a customized service or use whichever service mechanism you prefer. Consider using the `serviced` template at `actions-runner/bin/actions.runner.service.template` as a reference. If you use a customized service, the self-hosted runner service must always be invoked using the `runsvc.sh` entry point.
|
||||||
|
|
||||||
{% endlinux %}
|
{% endlinux %}
|
||||||
|
|
||||||
@@ -170,6 +171,6 @@ If you don't want to use the above default `systemd` service configuration, you
|
|||||||
|
|
||||||
### Customizing the self-hosted runner service
|
### Customizing the self-hosted runner service
|
||||||
|
|
||||||
If you don't want to use the above default launchd service configuration, you can create a customized service or use whichever service mechanism you prefer. Consider using the `plist` template at `actions-runner/bin/actions.runner.plist.template` as a reference. If you use a customized service, the self-hosted runner service must always be invoked using the `runsvc.sh` entry point.
|
If you don't want to use the above default launchd service configuration, you can create a customized service or use whichever service mechanism you prefer. Consider using the `plist` template at `actions-runner/bin/actions.runner.plist.template` as a reference. If you use a customized service, the self-hosted runner service must always be invoked using the `runsvc.sh` entry point.
|
||||||
|
|
||||||
{% endmac %}
|
{% endmac %}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
defaultPlatform: linux
|
defaultPlatform: linux
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -33,13 +34,13 @@ defaultPlatform: linux
|
|||||||
|
|
||||||
### Reviewing the self-hosted runner application log files
|
### Reviewing the self-hosted runner application log files
|
||||||
|
|
||||||
You can monitor the status of the self-hosted runner application and its activities. Log files are kept in the `_diag` directory, and a new one is generated each time the application is started. The filename begins with *Runner_*, and is followed by a UTC timestamp of when the application was started.
|
You can monitor the status of the self-hosted runner application and its activities. Log files are kept in the `_diag` directory, and a new one is generated each time the application is started. The filename begins with *Runner_*, and is followed by a UTC timestamp of when the application was started.
|
||||||
|
|
||||||
For detailed logs on workflow job executions, see the next section describing the *Worker_* files.
|
For detailed logs on workflow job executions, see the next section describing the *Worker_* files.
|
||||||
|
|
||||||
### Reviewing a job's log file
|
### Reviewing a job's log file
|
||||||
|
|
||||||
The self-hosted runner application creates a detailed log file for each job that it processes. These files are stored in the `_diag` directory, and the filename begins with *Worker_*.
|
The self-hosted runner application creates a detailed log file for each job that it processes. These files are stored in the `_diag` directory, and the filename begins with *Worker_*.
|
||||||
|
|
||||||
{% linux %}
|
{% linux %}
|
||||||
|
|
||||||
@@ -70,7 +71,7 @@ Feb 11 16:06:54 runner01 runsvc.sh[962]: 2020-02-11 16:06:54Z: Running job: test
|
|||||||
Feb 11 16:07:10 runner01 runsvc.sh[962]: 2020-02-11 16:07:10Z: Job testAction completed with result: Succeeded
|
Feb 11 16:07:10 runner01 runsvc.sh[962]: 2020-02-11 16:07:10Z: Job testAction completed with result: Succeeded
|
||||||
```
|
```
|
||||||
|
|
||||||
To view the systemd configuration, you can locate the service file here: `/etc/systemd/system/actions.runner.<org>-<repo>.<runnerName>.service`.
|
To view the systemd configuration, you can locate the service file here: `/etc/systemd/system/actions.runner.<org>-<repo>.<runnerName>.service`.
|
||||||
If you want to customize the self-hosted runner application service, do not directly modify this file. Follow the instructions described in "[Configuring the self-hosted runner application as a service](/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service#customizing-the-self-hosted-runner-service)."
|
If you want to customize the self-hosted runner application service, do not directly modify this file. Follow the instructions described in "[Configuring the self-hosted runner application as a service](/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service#customizing-the-self-hosted-runner-service)."
|
||||||
|
|
||||||
{% endlinux %}
|
{% endlinux %}
|
||||||
@@ -98,7 +99,7 @@ Started:
|
|||||||
|
|
||||||
The resulting output includes the process ID and the name of the application’s launchd service.
|
The resulting output includes the process ID and the name of the application’s launchd service.
|
||||||
|
|
||||||
To view the launchd configuration, you can locate the service file here: `/Users/exampleUsername/Library/LaunchAgents/actions.runner.<repoName>.<runnerName>.service`.
|
To view the launchd configuration, you can locate the service file here: `/Users/exampleUsername/Library/LaunchAgents/actions.runner.<repoName>.<runnerName>.service`.
|
||||||
If you want to customize the self-hosted runner application service, do not directly modify this file. Follow the instructions described in "[Configuring the self-hosted runner application as a service](/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service#customizing-the-self-hosted-runner-service-1)."
|
If you want to customize the self-hosted runner application service, do not directly modify this file. Follow the instructions described in "[Configuring the self-hosted runner application as a service](/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service#customizing-the-self-hosted-runner-service-1)."
|
||||||
|
|
||||||
{% endmac %}
|
{% endmac %}
|
||||||
@@ -161,7 +162,7 @@ In addition, you can find more information in the _SelfUpdate_ log files located
|
|||||||
|
|
||||||
#### Checking that Docker is installed
|
#### Checking that Docker is installed
|
||||||
|
|
||||||
If your jobs require containers, then the self-hosted runner must be Linux-based and needs to have Docker installed. Check that your self-hosted runner has Docker installed and that the service is running.
|
If your jobs require containers, then the self-hosted runner must be Linux-based and needs to have Docker installed. Check that your self-hosted runner has Docker installed and that the service is running.
|
||||||
|
|
||||||
You can use `systemctl` to check the service status:
|
You can use `systemctl` to check the service status:
|
||||||
|
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ intro: You can use labels to organize your self-hosted runners based on their ch
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ intro: '{% data variables.product.prodname_actions %} are designed to help you b
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'overview'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'how_to'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
@@ -39,7 +40,7 @@ You can search and browse actions directly in your repository's workflow editor.
|
|||||||
|
|
||||||
### Adding an action to your workflow
|
### Adding an action to your workflow
|
||||||
|
|
||||||
An action's listing page includes the action's version and the workflow syntax required to use the action. To keep your workflow stable even when updates are made to an action, you can reference the version of the action to use by specifying the Git or Docker tag number in your workflow file.
|
An action's listing page includes the action's version and the workflow syntax required to use the action. To keep your workflow stable even when updates are made to an action, you can reference the version of the action to use by specifying the Git or Docker tag number in your workflow file.
|
||||||
|
|
||||||
1. Navigate to the action you want to use in your workflow.
|
1. Navigate to the action you want to use in your workflow.
|
||||||
1. Under "Installation", click {% octicon "clippy" aria-label="The edit icon" %} to copy the workflow syntax.
|
1. Under "Installation", click {% octicon "clippy" aria-label="The edit icon" %} to copy the workflow syntax.
|
||||||
@@ -90,9 +91,9 @@ For more information, see "[Using release management for actions](/actions/creat
|
|||||||
|
|
||||||
### Using inputs and outputs with an action
|
### Using inputs and outputs with an action
|
||||||
|
|
||||||
An action often accepts or requires inputs and generates outputs that you can use. For example, an action might require you to specify a path to a file, the name of a label, or other data it will use as part of the action processing.
|
An action often accepts or requires inputs and generates outputs that you can use. For example, an action might require you to specify a path to a file, the name of a label, or other data it will use as part of the action processing.
|
||||||
|
|
||||||
To see the inputs and outputs of an action, check the `action.yml` or `action.yaml` in the root directory of the repository.
|
To see the inputs and outputs of an action, check the `action.yml` or `action.yaml` in the root directory of the repository.
|
||||||
|
|
||||||
In this example `action.yml`, the `inputs` keyword defines a required input called `file-path`, and includes a default value that will be used if none is specified. The `outputs` keyword defines an output called `results-file`, which tells you where to locate the results.
|
In this example `action.yml`, the `inputs` keyword defines a required input called `file-path`, and includes a default value that will be used if none is specified. The `outputs` keyword defines an output called `results-file`, which tells you where to locate the results.
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'overview'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ intro: 'This guide shows you how to use the advanced features of {% data variabl
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'how_to'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
@@ -104,7 +105,7 @@ In Azure Pipelines, scripts can be configured to error if any output is sent to
|
|||||||
|
|
||||||
In Azure Pipelines, the default shell for scripts on Windows platforms is the Command shell (_cmd.exe_). In {% data variables.product.prodname_actions %}, the default shell for scripts on Windows platforms is PowerShell. PowerShell has several differences in built-in commands, variable expansion, and flow control.
|
In Azure Pipelines, the default shell for scripts on Windows platforms is the Command shell (_cmd.exe_). In {% data variables.product.prodname_actions %}, the default shell for scripts on Windows platforms is PowerShell. PowerShell has several differences in built-in commands, variable expansion, and flow control.
|
||||||
|
|
||||||
If you're running a simple command, you might be able to run a Command shell script in PowerShell without any changes. But in most cases, you will either need to update your script with PowerShell syntax or instruct {% data variables.product.prodname_actions %} to run the script with the Command shell instead of PowerShell. You can do this by specifying `shell` as `cmd`.
|
If you're running a simple command, you might be able to run a Command shell script in PowerShell without any changes. But in most cases, you will either need to update your script with PowerShell syntax or instruct {% data variables.product.prodname_actions %} to run the script with the Command shell instead of PowerShell. You can do this by specifying `shell` as `cmd`.
|
||||||
|
|
||||||
Below is an example of the syntax for each system:
|
Below is an example of the syntax for each system:
|
||||||
|
|
||||||
@@ -324,4 +325,3 @@ jobs:
|
|||||||
</table>
|
</table>
|
||||||
|
|
||||||
You can find actions that you can use in your workflow in [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace?type=actions), or you can create your own actions. For more information, see "[Creating actions](/actions/creating-actions)."
|
You can find actions that you can use in your workflow in [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace?type=actions), or you can create your own actions. For more information, see "[Creating actions](/actions/creating-actions)."
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ intro: '{% data variables.product.prodname_actions %} and GitLab CI/CD share sev
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
@@ -81,7 +82,7 @@ Jenkins can run the `stages` and `steps` in parallel, while {% data variables.pr
|
|||||||
|
|
||||||
#### Build matrix
|
#### Build matrix
|
||||||
|
|
||||||
Both {% data variables.product.prodname_actions %} and Jenkins let you use a build matrix to define various system combinations.
|
Both {% data variables.product.prodname_actions %} and Jenkins let you use a build matrix to define various system combinations.
|
||||||
|
|
||||||
| Jenkins | {% data variables.product.prodname_actions %} |
|
| Jenkins | {% data variables.product.prodname_actions %} |
|
||||||
| ------------- | ------------- |
|
| ------------- | ------------- |
|
||||||
@@ -166,7 +167,7 @@ Jenkins Pipeline
|
|||||||
maven-build:
|
maven-build:
|
||||||
env:
|
env:
|
||||||
MAVEN_PATH: '/usr/local/maven'
|
MAVEN_PATH: '/usr/local/maven'
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
@@ -209,7 +210,7 @@ Jenkins Pipeline
|
|||||||
needs: job1
|
needs: job1
|
||||||
job3:
|
job3:
|
||||||
needs: [job1, job2]
|
needs: [job1, job2]
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'tutorial'
|
||||||
---
|
---
|
||||||
|
|
||||||
### Introduction
|
### Introduction
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'overview'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
free-pro-team: '*'
|
free-pro-team: '*'
|
||||||
enterprise-server: '>=2.22'
|
enterprise-server: '>=2.22'
|
||||||
|
type: 'how_to'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-beta %}
|
{% data reusables.actions.enterprise-beta %}
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ versions:
|
|||||||
|
|
||||||
Most official {% data variables.product.prodname_dotcom %}-authored actions are automatically bundled with {% data variables.product.prodname_ghe_server %}, and are captured at a point in time from {% data variables.product.prodname_marketplace %}. When your {% data variables.product.prodname_ghe_server %} instance receives updates, the bundled official actions are also updated.
|
Most official {% data variables.product.prodname_dotcom %}-authored actions are automatically bundled with {% data variables.product.prodname_ghe_server %}, and are captured at a point in time from {% data variables.product.prodname_marketplace %}. When your {% data variables.product.prodname_ghe_server %} instance receives updates, the bundled official actions are also updated.
|
||||||
|
|
||||||
The bundled official actions include `actions/checkout`, `actions/upload-artifact`, `actions/download-artifact`, `actions/labeler`, and various `actions/setup-` actions, among others. To see all the official actions included on your enterprise instance, browse to the `actions` organization on your instance: https://{% data variables.product.product_url %}/actions.
|
The bundled official actions include `actions/checkout`, `actions/upload-artifact`, `actions/download-artifact`, `actions/labeler`, and various `actions/setup-` actions, among others. To see all the official actions included on your enterprise instance, browse to the `actions` organization on your instance: <code>https://<em>HOSTNAME</em>/actions</code>.
|
||||||
|
|
||||||
Each action is a repository in the `actions` organization, and each action repository includes the necessary tags, branches, and commit SHAs that your workflows can use to reference the action.
|
Each action is a repository in the `actions` organization, and each action repository includes the necessary tags, branches, and commit SHAs that your workflows can use to reference the action.
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ versions:
|
|||||||
### Following the GitHub flow
|
### Following the GitHub flow
|
||||||
|
|
||||||
1. [Create a branch](/articles/creating-and-deleting-branches-within-your-repository) from the repository.
|
1. [Create a branch](/articles/creating-and-deleting-branches-within-your-repository) from the repository.
|
||||||
2. [Create](/articles/creating-new-files), [edit](/articles/editing-files), [rename](/articles/renaming-a-file), [move](/articles/moving-a-file-to-a-new-location), or [delete](/articles/deleting-files) files.
|
2. [Create](/articles/creating-new-files), [edit](/articles/editing-files), [rename](/articles/renaming-a-file), [move](/articles/moving-a-file-to-a-new-location), or [delete](/github/managing-files-in-a-repository/deleting-files-in-a-repository) files.
|
||||||
3. [Send a pull request](/articles/creating-a-pull-request) from your branch with your proposed changes to kick off a discussion.
|
3. [Send a pull request](/articles/creating-a-pull-request) from your branch with your proposed changes to kick off a discussion.
|
||||||
4. Make changes on your branch as needed. Your pull request will update automatically.
|
4. Make changes on your branch as needed. Your pull request will update automatically.
|
||||||
5. [Merge the pull request](/articles/merging-a-pull-request) once the branch is ready to be merged.
|
5. [Merge the pull request](/articles/merging-a-pull-request) once the branch is ready to be merged.
|
||||||
|
|||||||
@@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
title: Deleting files in a repository
|
||||||
|
intro: 'You can delete an individual file{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %} or an entire directory{% endif %} in your repository on {% data variables.product.product_name %}.'
|
||||||
|
redirect_from:
|
||||||
|
- /articles/deleting-files
|
||||||
|
- /github/managing-files-in-a-repository/deleting-files
|
||||||
|
- /github/managing-files-in-a-repository/deleting-a-file-or-directory
|
||||||
|
versions:
|
||||||
|
free-pro-team: '*'
|
||||||
|
enterprise-server: '*'
|
||||||
|
github-ae: '*'
|
||||||
|
permissions: People with write permissions can delete files{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %} or directories{% endif %} in a repository.
|
||||||
|
---
|
||||||
|
|
||||||
|
### About file{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %} and directory{% endif %} deletion
|
||||||
|
|
||||||
|
You can delete an individual file in your repository{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %} or an entire directory, including all the files in the directory{% endif %}.
|
||||||
|
|
||||||
|
If you try to delete a file{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %} or directory{% endif %} in a repository that you don’t have write permissions to, we'll fork the project to your user account and help you send a pull request to the original repository after you commit your change. For more information, see "[About pull requests](/github/collaborating-with-issues-and-pull-requests/about-pull-requests)."
|
||||||
|
|
||||||
|
If the file{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %} or directory{% endif %} you deleted contains sensitive data, the data will still be available in the repository's Git history. To completely remove the file from {% data variables.product.product_name %}, you must remove the file from your repository's history. For more information, see "[Removing sensitive data from a repository](/github/authenticating-to-github/removing-sensitive-data-from-a-repository)."
|
||||||
|
|
||||||
|
### Deleting a file
|
||||||
|
|
||||||
|
1. Browse to the file in your repository that you want to delete.
|
||||||
|
2. At the top of the file, click {% octicon "trashcan" aria-label="The trashcan icon" %}.
|
||||||
|
{% data reusables.files.write_commit_message %}
|
||||||
|
{% data reusables.files.choose-commit-email %}
|
||||||
|
{% data reusables.files.choose_commit_branch %}
|
||||||
|
{% data reusables.files.propose_file_change %}
|
||||||
|
|
||||||
|
{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" %}
|
||||||
|
### Deleting a directory
|
||||||
|
|
||||||
|
1. Browse to the directory in your repository that you want to delete.
|
||||||
|
1. In the top-right corner, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then click **Delete directory**.
|
||||||
|

|
||||||
|
1. Review the files you will delete.
|
||||||
|
{% data reusables.files.write_commit_message %}
|
||||||
|
{% data reusables.files.choose-commit-email %}
|
||||||
|
{% data reusables.files.choose_commit_branch %}
|
||||||
|
{% data reusables.files.propose_file_change %}
|
||||||
|
{% endif %}
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
---
|
|
||||||
title: Deleting files
|
|
||||||
intro: 'You can delete any file within your repositories on {% data variables.product.product_name %}.'
|
|
||||||
redirect_from:
|
|
||||||
- /articles/deleting-files
|
|
||||||
versions:
|
|
||||||
free-pro-team: '*'
|
|
||||||
enterprise-server: '*'
|
|
||||||
github-ae: '*'
|
|
||||||
---
|
|
||||||
|
|
||||||
{% tip %}
|
|
||||||
|
|
||||||
**Tip**: If you try to delete a file in a repository that you don’t have access to, we'll fork the project to your user account and help you send [a pull request](/articles/about-pull-requests) to the original repository after you commit your change.
|
|
||||||
|
|
||||||
{% endtip %}
|
|
||||||
|
|
||||||
1. Browse to the file in your repository that you want to delete.
|
|
||||||
2. At the top of the file, click {% octicon "trashcan" aria-label="The trashcan icon" %}.
|
|
||||||
{% data reusables.files.write_commit_message %}
|
|
||||||
{% data reusables.files.choose-commit-email %}
|
|
||||||
{% data reusables.files.choose_commit_branch %}
|
|
||||||
{% data reusables.files.propose_file_change %}
|
|
||||||
|
|
||||||
{% danger %}
|
|
||||||
|
|
||||||
**Attention**: Since Git is a version control system, it always has your back if you need to recover the file later. If you really, *really* need to **completely** remove a file from a repository for some reason, such as a sensitive file that was accidentally committed, you should follow the steps in [our article about removing sensitive data](/articles/removing-sensitive-data-from-a-repository).
|
|
||||||
|
|
||||||
{% enddanger %}
|
|
||||||
@@ -21,7 +21,7 @@ versions:
|
|||||||
{% link_in_list /editing-files-in-your-repository %}
|
{% link_in_list /editing-files-in-your-repository %}
|
||||||
{% link_in_list /editing-files-in-another-users-repository %}
|
{% link_in_list /editing-files-in-another-users-repository %}
|
||||||
{% link_in_list /tracking-changes-in-a-file %}
|
{% link_in_list /tracking-changes-in-a-file %}
|
||||||
{% link_in_list /deleting-files %}
|
{% link_in_list /deleting-files-in-a-repository %}
|
||||||
{% link_in_list /renaming-a-file %}
|
{% link_in_list /renaming-a-file %}
|
||||||
{% link_in_list /getting-permanent-links-to-files %}
|
{% link_in_list /getting-permanent-links-to-files %}
|
||||||
{% topic_link_in_list /managing-files-using-the-command-line %}
|
{% topic_link_in_list /managing-files-using-the-command-line %}
|
||||||
|
|||||||
@@ -127,7 +127,8 @@ In addition to managing organization-level settings, organization owners have ad
|
|||||||
| [Convert issues to discussions in bulk](/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository) | | | **X** | **X** | **X** |
|
| [Convert issues to discussions in bulk](/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository) | | | **X** | **X** | **X** |
|
||||||
| [Lock and unlock discussions](/discussions/managing-discussions-for-your-community/moderating-discussions) | | **X** | **X** | **X** | **X** |
|
| [Lock and unlock discussions](/discussions/managing-discussions-for-your-community/moderating-discussions) | | **X** | **X** | **X** | **X** |
|
||||||
| [Individually convert issues to discussions](/discussions/managing-discussions-for-your-community/moderating-discussions) | | **X** | **X** | **X** | **X** |
|
| [Individually convert issues to discussions](/discussions/managing-discussions-for-your-community/moderating-discussions) | | **X** | **X** | **X** | **X** |
|
||||||
| [Create new discussions and comment on existing discussions](/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion) | **X** | **X** | **X** | **X** | **X** |{% endif %}
|
| [Create new discussions and comment on existing discussions](/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion) | **X** | **X** | **X** | **X** | **X** |
|
||||||
|
| [Delete a discussion](/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository#deleting-a-discussion) | | | | **X** | **X** |{% endif %}
|
||||||
|
|
||||||
### Further reading
|
### Further reading
|
||||||
|
|
||||||
|
|||||||