Merge branch 'main' into action_status-context
@@ -15,6 +15,11 @@ The day after a GHES version's [deprecation date](https://github.com/github/docs
|
||||
|
||||
- [ ] In your checkout of the [repo with archived GHES content](https://github.com/github/help-docs-archived-enterprise-versions), create a new branch: `git checkout -b deprecate-<version>`
|
||||
- [ ] In your `docs-internal` checkout, download the static files for the oldest supported version into your archival checkout:
|
||||
The archive script depends on an optional dependency so install optional dependencies first:
|
||||
```
|
||||
$ npm ci --include-optional
|
||||
```
|
||||
Then run the archive script:
|
||||
```
|
||||
$ script/enterprise-server-deprecations/archive-version.js -p <path-to-archive-repo-checkout>
|
||||
```
|
||||
@@ -26,16 +31,17 @@ The day after a GHES version's [deprecation date](https://github.com/github/docs
|
||||
|
||||
## Step 2: Upload the assets directory to Azure storage
|
||||
|
||||
- [ ] Log in to the Azure portal from Okta. Navigate to the [githubdocs Azure Storage Blob resoruce](https://portal.azure.com/#@githubazure.onmicrosoft.com/resource/subscriptions/fa6134a7-f27e-4972-8e9f-0cedffa328f1/resourceGroups/docs-production/providers/Microsoft.Storage/storageAccounts/githubdocs/overview).
|
||||
- [ ] Log in to the Azure portal from Okta. Navigate to the [githubdocs Azure Storage Blob resource](https://portal.azure.com/#@githubazure.onmicrosoft.com/resource/subscriptions/fa6134a7-f27e-4972-8e9f-0cedffa328f1/resourceGroups/docs-production/providers/Microsoft.Storage/storageAccounts/githubdocs/overview).
|
||||
- [ ] Click the "Open in Explorer" button to the right of search box.If you haven't already, click the download link to download "Microsoft Azure Storage Explorer." To login to the app, click the plug icon in the left sidebar and click the option to "add an azure account." When you login, you'll need a yubikey to authenticate through Okta.
|
||||
- [ ] From the Microsoft Azure Storage Explorer app, select the `githubdocs` storage account resource and navigate to the `github-images` blob container.
|
||||
- [ ] Click "Upload" and select "Upload folder." Click the "Selected folder" input to navigate to the `help-docs-archived-enterprise-versions` repository and select the `assets` directory for the version you just generated. In the "Destination folder" input, add the version number. For example, `/enterprise/2.22/`.
|
||||
- [ ] Check the log to ensure all files were uploaded successfully.
|
||||
- [ ] Removed the `assets` directory from the `/help-docsc-archived-enterprise-versions` repository.
|
||||
- [ ] Remove the `assets` directory from your `help-docsc-archived-enterprise-versions` repository, we don't want to commit that directory in the next step.
|
||||
|
||||
## Step 3: Commit and push changes to help-docs-archived-enterprise-versions repo
|
||||
|
||||
- [ ] Search for `site-search-input` in the compressed Javascript files. When you find it, use something like https://beautifier.io/ to reformat it to be readable. Find `site-search-input` in the file, there will be something like... `1125: function () { return [SearchReactComponent] },` Delete the innards of this function, but leave the `function() {}` part.
|
||||
- [ ] Search for `site-search-input` in the compressed Javascript files (should find the file in the `_next` directory). When you find it, use something like https://beautifier.io/ to reformat it to be readable. Find `site-search-input` in the file, the result will be enclosed in a function that looks something like... `1125: function () { ... },` Delete the innards of this function, but leave the `function() {}` part.
|
||||
- [ ] Copy, paste, and save the updated file back into your local `help-docs-archived-enterprise-versions` repository.
|
||||
- [ ] In your archival checkout, `git add <version>`, commit, and push.
|
||||
- [ ] Open a PR and merge it in. Note that the version will _not_ be deprecated on the docs site until you do the next step.
|
||||
|
||||
@@ -43,35 +49,32 @@ The day after a GHES version's [deprecation date](https://github.com/github/docs
|
||||
|
||||
In your `docs-internal` checkout:
|
||||
- [ ] Create a new branch: `git checkout -b deprecate-<version>`.
|
||||
- [ ] Edit `lib/enterprise-server-releases.js` by moving the number to be deprecated into the `deprecated` array.
|
||||
- [ ] Edit `lib/enterprise-server-releases.js` by removing the version number to be deprecated from the `supported` array and move it to the `deprecated` array.
|
||||
- [ ] Open a new PR. Make sure to check the following:
|
||||
- [ ] Tests are passing.
|
||||
- [ ] The deprecated version renders on staging as expected. You should be able to navigate to docs.github.com/enterprise/<DEPRECATED VERSION> to access the docs. You should also be able to navigate to a page that is available in the deprecated version and change the version in the URL to the deprecated version, to test redirects.
|
||||
- [ ] Tests are passing (you may need to include the changes in step 6 to get tests to pass).
|
||||
- [ ] The deprecated version renders in preview as expected. You should be able to navigate to `docs.github.com/enterprise/<DEPRECATED VERSION>` to access the docs. You should also be able to navigate to a page that is available in the deprecated version and change the version in the URL to the deprecated version, to test redirects.
|
||||
- [ ] The new oldest supported version renders on staging as expected. You should see a banner on the top of every page for the oldest supported version that notes when the version will be deprecated.
|
||||
|
||||
You may need to include the changes in step 6 to get tests to pass.
|
||||
|
||||
## Step 5: Remove static files for the version
|
||||
|
||||
- [ ] In your `docs-internal` checkout, from your `remove-<version>-static-files` branch: `git checkout -b remove-<version>-static-files`
|
||||
- [ ] In your `docs-internal` checkout, create a new branch `remove-<version>-static-files` branch: `git checkout -b remove-<version>-static-files` (you can branch off of `main` or from your `deprecate-<version>` branch, up to you).
|
||||
- [ ] Run `script/enterprise-server-deprecations/remove-static-files.js` and commit results.
|
||||
- [ ] Run `script/enterprise-server-deprecations/remove-redirects.js` and commit results.
|
||||
- [ ] `lib/rest/static` directory has deferenced and decorated directory underneath, remove the numbered version and all below from the list
|
||||
- [ ] Open a new PR.
|
||||
- [ ] Get a review from docs-engineering and merge. This step can be merged independently from step 6. The purpose of splitting up steps 5 and 6 is to focus the review on specific files.
|
||||
|
||||
## Step 6: Remove the liquid conditionals and content for the version
|
||||
|
||||
- [ ] In your `docs-internal` checkout, from your `remove-<version>-markup` branch: `git checkout -b remove-<version>-markup`
|
||||
- [ ] In your `docs-internal` checkout, create a new branch `remove-<version>-markup` branch: `git checkout -b remove-<version>-markup` (you can branch off of `main` or from your `deprecate-<version>` branch, up to you).
|
||||
- [ ] Remove the outdated Liquid markup and frontmatter.
|
||||
- [ ] Run the script: `script/enterprise-server-deprecations/remove-version-markup.js --release <number>`.
|
||||
- [ ] Spot check a few changes. Content, frontmatter, and data files should all have been updated.
|
||||
- [ ] Open a PR with the results. The diff may be large and complex, so make sure to get a review from `@github/docs-content`.
|
||||
- [ ] Debug any test failures or unexpected results.
|
||||
- [ ] Debug any test failures or unexpected results -- it's very likely manual updates will be necessary, the script does a lot of work but doesn't automate everything and can't 100% replace human intent.
|
||||
- [ ] When the PR is approved, merge it in to complete the deprecation. This can be merged independently from step 5.
|
||||
|
||||
## Step 7: Deprecate the OpenAPI description in `github/github`
|
||||
|
||||
- [ ] In `github/github`, edit the release's config file in `app/api/description/config/releases/`, and change `deprecated: false` to `deprecated: true`.
|
||||
- [ ] Open a new PR, and get the required code owner approvals. A docs-content team member can approve it for the docs team.
|
||||
- [ ] When the PR is approved, merge the `github/github` PR.
|
||||
- [ ] When the PR is approved, [deploy the `github/github` PR](https://thehub.github.com/engineering/devops/deployment/deploying-dotcom/). If you haven't deployed a `github/github` PR before, work with someone that has -- the process isn't too involved depending on how you deploy, but there are a lot of details that can potentially be confusing as you can see from the documentation.
|
||||
|
||||
@@ -162,6 +162,11 @@ jobs:
|
||||
rsync -rptovR ./user-code/content/./**/*.md ./content
|
||||
rsync -rptovR ./user-code/assets/./**/*.png ./assets
|
||||
rsync -rptovR ./user-code/data/./**/*.{yml,md} ./data
|
||||
rsync -rptovR ./user-code/components/./**/*.{ts,tsx} ./components
|
||||
rsync -rptovR ./user-code/lib/./**/*.{js,ts,json} ./lib
|
||||
rsync -rptovR ./user-code/middleware/./**/*.{js,ts} ./middleware
|
||||
rsync -rptovR ./user-code/pages/./**/*.{tsx} ./pages
|
||||
rsync -rptovR ./user-code/stylesheets/./**/*.{scss} ./stylesheets
|
||||
|
||||
# In addition to making the final image smaller, we also save time by not sending unnecessary files to the docker build context
|
||||
- name: 'Prune for preview env'
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
name: Production (Azure) - Build and Deploy
|
||||
name: Azure Production - Build and Deploy
|
||||
|
||||
# **What it does**: Builds and deploys the default branch to production
|
||||
# **Why we have it**: To enable us to deploy the latest to production whenever necessary rather than relying on PR merges.
|
||||
@@ -21,10 +21,10 @@ concurrency:
|
||||
cancel-in-progress: false
|
||||
|
||||
jobs:
|
||||
build-and-deploy-prod-azure:
|
||||
azure-prod-build-and-deploy:
|
||||
if: ${{ github.repository == 'github/docs-internal' }}
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 15
|
||||
timeout-minutes: 20
|
||||
environment:
|
||||
name: production
|
||||
url: 'https://docs.github.com'
|
||||
3
.github/workflows/openapi-decorate.yml
vendored
@@ -37,6 +37,9 @@ jobs:
|
||||
# so we need to specify the PR head ref explicitly since we're making
|
||||
# changes that we want to commit to the branch.
|
||||
ref: ${{ github.event.pull_request.head.ref }}
|
||||
# Using a PAT is necessary so that the new commit will trigger the
|
||||
# CI in the PR. (Events from GITHUB_TOKEN don't trigger new workflows.)
|
||||
token: ${{ secrets.DOCUBOT_REPO_PAT }}
|
||||
|
||||
- name: Setup node
|
||||
uses: actions/setup-node@1f8c6b94b26d0feae1e387ca63ccbdc44d27b561
|
||||
|
||||
1
.github/workflows/test.yml
vendored
@@ -135,4 +135,5 @@ jobs:
|
||||
- name: Run tests
|
||||
env:
|
||||
DIFF_FILE: get_diff_files.txt
|
||||
CHANGELOG_CACHE_FILE_PATH: tests/fixtures/changelog-feed.json
|
||||
run: npm test -- tests/${{ matrix.test-group }}/
|
||||
|
||||
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 61 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 99 KiB |
|
Before Width: | Height: | Size: 143 KiB After Width: | Height: | Size: 164 KiB |
|
Before Width: | Height: | Size: 76 KiB |
|
Before Width: | Height: | Size: 124 KiB |
|
After Width: | Height: | Size: 78 KiB |
BIN
assets/images/help/pull_requests/pr-file-tree.png
Normal file
|
After Width: | Height: | Size: 93 KiB |
BIN
assets/images/help/repository/add-tag-protection-rule.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 38 KiB |
BIN
assets/images/help/repository/dependabot-alerts-closed.png
Normal file
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 29 KiB |
BIN
assets/images/help/repository/new-tag-protection-rule.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
assets/images/help/repository/reopen-dismissed-alert.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 105 KiB |
|
Before Width: | Height: | Size: 89 KiB After Width: | Height: | Size: 122 KiB |
|
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 114 KiB |
BIN
assets/images/help/repository/set-tag-protection-pattern.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 235 KiB |
|
Before Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 49 KiB |
@@ -1,11 +1,16 @@
|
||||
import { useEffect } from 'react'
|
||||
import { useRouter } from 'next/router'
|
||||
import hljs from 'highlight.js/lib/core'
|
||||
import json from 'highlight.js/lib/languages/json'
|
||||
import javascript from 'highlight.js/lib/languages/javascript'
|
||||
import hljsCurl from 'highlightjs-curl'
|
||||
|
||||
// Add as needed. It's pretty cheap to add but please don't use
|
||||
// highlight.js import that loads all and everything.
|
||||
hljs.registerLanguage('json', json)
|
||||
const SUPPORTED_LANGUAGES = ['json']
|
||||
hljs.registerLanguage('javascript', javascript)
|
||||
hljs.registerLanguage('curl', hljsCurl)
|
||||
const SUPPORTED_LANGUAGES = ['json', 'javascript', 'curl']
|
||||
|
||||
// This is the selector we use for the first document.querySelectorAll()
|
||||
// to find the containers for `<code>` tags. Because it's s dataset
|
||||
@@ -24,6 +29,8 @@ const CODE_ELEMENTS_PARENT_SELECTOR = '[data-highlight]'
|
||||
const CODE_SELECTOR = 'pre code'
|
||||
|
||||
export default function ClientSideHighlightJS() {
|
||||
const { asPath } = useRouter()
|
||||
|
||||
useEffect(() => {
|
||||
// Hi Internet Explorer!
|
||||
// https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#browser_compatibility
|
||||
@@ -59,7 +66,7 @@ export default function ClientSideHighlightJS() {
|
||||
intersectionObserver.observe(element)
|
||||
}
|
||||
}
|
||||
}, [])
|
||||
}, [asPath])
|
||||
|
||||
return null
|
||||
}
|
||||
|
||||
2
components/declarations.d.ts
vendored
@@ -2,3 +2,5 @@ declare module '*.scss' {
|
||||
const content: Record<string, string>
|
||||
export default content
|
||||
}
|
||||
|
||||
declare module 'highlightjs-curl'
|
||||
|
||||
@@ -1,9 +1,14 @@
|
||||
import { useRouter } from 'next/router'
|
||||
import Cookies from 'js-cookie'
|
||||
|
||||
import { Link } from 'components/Link'
|
||||
import { useLanguages } from 'components/context/LanguagesContext'
|
||||
import { Picker } from 'components/ui/Picker'
|
||||
import { useTranslation } from 'components/hooks/useTranslation'
|
||||
|
||||
// This value is replicated in two places! See middleware/detect-language.js
|
||||
const PREFERRED_LOCALE_COOKIE_NAME = 'preferredlang'
|
||||
|
||||
type Props = {
|
||||
variant?: 'inline'
|
||||
}
|
||||
@@ -22,6 +27,22 @@ export const LanguagePicker = ({ variant }: Props) => {
|
||||
// in a "denormalized" way.
|
||||
const routerPath = router.asPath.split('#')[0]
|
||||
|
||||
function rememberPreferredLanguage(code: string) {
|
||||
try {
|
||||
Cookies.set(PREFERRED_LOCALE_COOKIE_NAME, code, {
|
||||
expires: 365,
|
||||
secure: document.location.protocol !== 'http:',
|
||||
})
|
||||
} catch (err) {
|
||||
// You can never be too careful because setting a cookie
|
||||
// can fail. For example, some browser
|
||||
// extensions disallow all setting of cookies and attempts
|
||||
// at the `document.cookie` setter could throw. Just swallow
|
||||
// and move on.
|
||||
console.warn('Unable to set preferred language cookie', err)
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<Picker
|
||||
variant={variant}
|
||||
@@ -33,7 +54,13 @@ export const LanguagePicker = ({ variant }: Props) => {
|
||||
text: lang.nativeName || lang.name,
|
||||
selected: lang === selectedLang,
|
||||
item: (
|
||||
<Link href={routerPath} locale={lang.code}>
|
||||
<Link
|
||||
href={routerPath}
|
||||
locale={lang.code}
|
||||
onClick={() => {
|
||||
rememberPreferredLanguage(lang.code)
|
||||
}}
|
||||
>
|
||||
{lang.nativeName ? (
|
||||
<>
|
||||
<span lang={lang.code}>{lang.nativeName}</span> (
|
||||
|
||||
@@ -513,7 +513,7 @@ const article: PlaygroundArticleT = {
|
||||
- name: Test with pytest
|
||||
run: pytest tests.py --doctest-modules --junitxml=junit/test-results-\${{ matrix.python-version }}.xml
|
||||
- name: Upload pytest test results
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: pytest-results-\${{ matrix.python-version }}
|
||||
path: junit/test-results-\${{ matrix.python-version }}.xml
|
||||
|
||||
@@ -5,17 +5,12 @@ import styles from './CodeBlock.module.scss'
|
||||
type Props = {
|
||||
verb?: string
|
||||
codeBlock: string
|
||||
setHTML?: boolean
|
||||
highlight?: string
|
||||
}
|
||||
|
||||
export function CodeBlock({ verb, codeBlock, setHTML = false }: Props) {
|
||||
return setHTML ? (
|
||||
<div
|
||||
className={cx(styles.codeBlock, 'rounded')}
|
||||
dangerouslySetInnerHTML={{ __html: codeBlock }}
|
||||
/>
|
||||
) : (
|
||||
<pre className={cx(styles.methodCodeBlock, 'rounded-1 border')}>
|
||||
export function CodeBlock({ verb, codeBlock, highlight }: Props) {
|
||||
return (
|
||||
<pre className={cx(styles.methodCodeBlock, 'rounded-1 border')} data-highlight={highlight}>
|
||||
<code>
|
||||
{verb && (
|
||||
<span className="color-bg-accent-emphasis color-fg-on-emphasis rounded-1 text-uppercase">
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { xCodeSample } from './types'
|
||||
import type { xCodeSample } from './types'
|
||||
import { useTranslation } from 'components/hooks/useTranslation'
|
||||
import { CodeBlock } from './CodeBlock'
|
||||
|
||||
@@ -34,8 +34,8 @@ export function RestCodeSamples({ slug, xCodeSamples }: Props) {
|
||||
sampleElements.push(
|
||||
<CodeBlock
|
||||
key={sample.lang + index}
|
||||
codeBlock={sample.sourceHTML}
|
||||
setHTML={true}
|
||||
codeBlock={sample.source}
|
||||
highlight={sample.lang === 'JavaScript' ? 'javascript' : 'curl'}
|
||||
></CodeBlock>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ export function RestResponse({ responses }: Props) {
|
||||
<CodeBlock
|
||||
codeBlock={`Status: ${response.httpStatusCode} ${response.httpStatusMessage}`}
|
||||
/>
|
||||
<CodeBlock codeBlock={response.payload} setHTML={true} />
|
||||
{response.payload ? <CodeBlock codeBlock={response.payload} highlight="json" /> : null}
|
||||
</div>
|
||||
)
|
||||
})}
|
||||
|
||||
@@ -39,7 +39,7 @@ export interface CodeResponse {
|
||||
|
||||
export interface xCodeSample {
|
||||
lang: string
|
||||
sourceHTML: string
|
||||
source: string
|
||||
}
|
||||
|
||||
export interface Preview {
|
||||
|
||||
@@ -67,15 +67,11 @@ When you unwatch a repository, you unsubscribe from future updates from that rep
|
||||

|
||||
|
||||
2. On the watched repositories page, after you've evaluated the repositories you're watching, choose whether to:
|
||||
{%- ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
|
||||
- Unwatch a repository
|
||||
- Ignore all notifications for a repository
|
||||
- If enabled, customize the types of event you receive notifications for ({% data reusables.notifications-v2.custom-notification-types %})
|
||||
{%- else %}
|
||||
- Unwatch a repository
|
||||
- Only watch releases for a repository
|
||||
- Ignore all notifications for a repository
|
||||
{%- endif %}
|
||||
|
||||
{%- ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5819 %}
|
||||
1. Optionally, to unsubscribe from all repositories owned by a given user or organization, select the **Unwatch all** dropdown and click the organization whose repositories you'd like to unsubscribe from. The button to unwatch all repositories is only available if you are watching all activity or custom notifications on over 10 repositories.
|
||||
|
||||
|
||||
@@ -38,13 +38,11 @@ When your inbox has too many notifications to manage, consider whether you have
|
||||
For more information, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#automatic-watching)."
|
||||
|
||||
To see an overview of your repository subscriptions, see "[Reviewing repositories that you're watching](#reviewing-repositories-that-youre-watching)."
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
{% tip %}
|
||||
|
||||
**Tip:** You can select the types of event to be notified of by using the **Custom** option of the **Watch/Unwatch** dropdown list in your [watching page](https://github.com/watching) or on any repository page on {% data variables.product.product_name %}. For more information, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository)."
|
||||
|
||||
{% endtip %}
|
||||
{% endif %}
|
||||
|
||||
Many people forget about repositories that they've chosen to watch in the past. From the "Watched repositories" page you can quickly unwatch repositories. For more information on ways to unsubscribe, see "[Unwatch recommendations](https://github.blog/changelog/2020-11-10-unwatch-recommendations/)" on {% data variables.product.prodname_blog %} and "[Managing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/managing-your-subscriptions)." You can also create a triage workflow to help with the notifications you receive. For guidance on triage workflows, see "[Customizing a workflow for triaging your notifications](/github/managing-subscriptions-and-notifications-on-github/customizing-a-workflow-for-triaging-your-notifications)."
|
||||
|
||||
@@ -72,15 +70,11 @@ Many people forget about repositories that they've chosen to watch in the past.
|
||||
1. In the left sidebar, under the list of repositories, use the "Manage notifications" drop-down menu and click **Watched repositories**.
|
||||

|
||||
2. Evaluate the repositories that you are watching and decide if their updates are still relevant and helpful. When you watch a repository, you will be notified of all conversations for that repository.
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||

|
||||
{% else %}
|
||||

|
||||
{% endif %}
|
||||

|
||||
|
||||
{% tip %}
|
||||
|
||||
**Tip:** Instead of watching a repository, consider only receiving notifications {% ifversion fpt or ghes > 3.0 or ghae or ghec %}when there are updates to {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository), or any combination of these options,{% else %}for releases in a repository,{% endif %} or completely unwatching a repository.
|
||||
**Tip:** Instead of watching a repository, consider only receiving notifications when there are updates to {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository), or any combination of these options, or completely unwatching a repository.
|
||||
|
||||
When you unwatch a repository, you can still be notified when you're @mentioned or participating in a thread. When you configure to receive notifications for certain event types, you're only notified when there are updates to these event types in the repository, you're participating in a thread, or you or a team you're on is @mentioned.
|
||||
|
||||
|
||||
@@ -28,9 +28,8 @@ You can choose to receive ongoing updates about specific activity on {% data var
|
||||
You can choose to subscribe to notifications for:
|
||||
- A conversation in a specific issue, pull request, or gist.
|
||||
- All activity in a repository or team discussion.
|
||||
- CI activity, such as the status of workflows in repositories set up with {% data variables.product.prodname_actions %}. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
- Repository {% data reusables.notifications-v2.custom-notification-types %} (if enabled).{% else %}
|
||||
- Releases in a repository.{% endif %}
|
||||
- CI activity, such as the status of workflows in repositories set up with {% data variables.product.prodname_actions %}.
|
||||
- Repository {% data reusables.notifications-v2.custom-notification-types %} (if enabled).
|
||||
|
||||
You can also choose to automatically watch all repositories that you have push access to, except forks. You can watch any other repository you have access to manually by clicking **Watch**.
|
||||
|
||||
|
||||
@@ -71,16 +71,13 @@ When you watch a repository, you're subscribing to updates for activity in that
|
||||
|
||||
To see repositories that you're watching, go to your [watching page](https://github.com/watching). For more information, see "[Managing subscriptions and notifications on GitHub](/github/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github)."
|
||||
|
||||
{% ifversion ghae or ghes < 3.1 %}
|
||||
{% ifversion ghae %}
|
||||
### Configuring notifications
|
||||
{% endif %}
|
||||
You can configure notifications for a repository on the repository page, or on your watching page.{% ifversion ghes < 3.1 %} You can choose to only receive notifications for releases in a repository, or ignore all notifications for a repository.{% endif %}
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
You can configure notifications for a repository on the repository page, or on your watching page.
|
||||
|
||||
### About custom notifications
|
||||
You can customize notifications for a repository. For example, you can choose to only be notified when updates to one or more types of events ({% data reusables.notifications-v2.custom-notification-types %}) happen within a repository, or ignore all notifications for a repository.
|
||||
{% endif %} For more information, see "[Configuring your watch settings for an individual repository](#configuring-your-watch-settings-for-an-individual-repository)" below.
|
||||
You can customize notifications for a repository. For example, you can choose to only be notified when updates to one or more types of events ({% data reusables.notifications-v2.custom-notification-types %}) happen within a repository, or ignore all notifications for a repository. For more information, see "[Configuring your watch settings for an individual repository](#configuring-your-watch-settings-for-an-individual-repository)" below.
|
||||
|
||||
### Participating in conversations
|
||||
Anytime you comment in a conversation or when someone @mentions your username, you are _participating_ in a conversation. By default, you are automatically subscribed to a conversation when you participate in it. You can unsubscribe from a conversation you've participated in manually by clicking **Unsubscribe** on the issue or pull request or through the **Unsubscribe** option in the notifications inbox.
|
||||
@@ -160,17 +157,17 @@ If "Automatically watch repositories" is disabled, then you will not automatical
|
||||
|
||||
## Configuring your watch settings for an individual repository
|
||||
|
||||
You can choose whether to watch or unwatch an individual repository. You can also choose to only be notified of {% ifversion fpt or ghes > 3.0 or ghae or ghec %}certain event types such as {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository) {% else %}new releases{% endif %}, or completely ignore an individual repository.
|
||||
You can choose whether to watch or unwatch an individual repository. You can also choose to only be notified of certain event types such as {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository) , or completely ignore an individual repository.
|
||||
|
||||
{% data reusables.repositories.navigate-to-repo %}
|
||||
2. In the upper-right corner, select the "Watch" drop-down menu to click a watch option.
|
||||
{% ifversion fpt or ghes > 3.0 or ghae-issue-4910 or ghec %}
|
||||
{% ifversion fpt or ghes or ghae-issue-4910 or ghec %}
|
||||

|
||||
|
||||
The **Custom** option allows you to further customize notifications so that you're only notified when specific events happen in the repository, in addition to participating and @mentions.
|
||||
{% else %}
|
||||
{% endif %}
|
||||
{% ifversion fpt or ghes > 3.0 or ghae-issue-4910 or ghec %}
|
||||
{% ifversion fpt or ghes or ghae-issue-4910 or ghec %}
|
||||

|
||||
If you select "Issues", you will be notified about, and subscribed to, updates on every issue (including those that existed prior to you selecting this option) in the repository. If you're @mentioned in a pull request in this repository, you'll receive notifications for that too, and you'll be subscribed to updates on that specific pull request, in addition to being notified about issues.
|
||||
{% endif %}
|
||||
|
||||
@@ -19,6 +19,8 @@ shortTitle: Missing contributions
|
||||
|
||||
Your profile contributions graph is a record of contributions you've made to repositories {% ifversion ghae %}owned by{% else %}on{% endif %} {% data variables.product.product_location %}. Contributions are timestamped according to Coordinated Universal Time (UTC) rather than your local time zone. Contributions are only counted if they meet certain criteria. In some cases, we may need to rebuild your graph in order for contributions to appear.
|
||||
|
||||
If you are part of an organization that uses SAML single sign-on (SSO), you won’t be able to see contribution activity from the organization on your profile if you do not have an active SSO session. People viewing your profile from outside your organization will see anonymized contribution activity of your contribution activity for your organization.
|
||||
|
||||
## Contributions that are counted
|
||||
|
||||
### Issues, pull requests and discussions
|
||||
|
||||
@@ -30,7 +30,7 @@ For an overview of repository-level security, see "[Securing your repository](/c
|
||||
|
||||
{% data reusables.user-settings.access_settings %}
|
||||
{% data reusables.user-settings.security-analysis %}
|
||||
3. Under "Configure security and analysis features", to the right of the feature, click **Disable all** or **Enable all**.
|
||||
3. Under "Code security and analysis", to the right of the feature, click **Disable all** or **Enable all**.
|
||||
{% ifversion ghes > 3.2 %}{% else %}{% endif %}
|
||||
6. Optionally, enable the feature by default for new repositories that you own.
|
||||
{% ifversion ghes > 3.2 %}{% else %}{% endif %}
|
||||
@@ -43,7 +43,7 @@ For an overview of repository-level security, see "[Securing your repository](/c
|
||||
|
||||
{% data reusables.user-settings.access_settings %}
|
||||
{% data reusables.user-settings.security-analysis %}
|
||||
3. Under "Configure security and analysis features", to the right of the feature, enable or disable the feature by default for new repositories that you own.
|
||||
3. Under "Code security and analysis", to the right of the feature, enable or disable the feature by default for new repositories that you own.
|
||||
{% ifversion ghes > 3.2 %}{% else %}{% endif %}
|
||||
|
||||
## Further reading
|
||||
|
||||
@@ -34,15 +34,14 @@ The repository owner has full control of the repository. In addition to the acti
|
||||
| :- | :- |
|
||||
| {% ifversion fpt or ghec %}Invite collaborators{% else %}Add collaborators{% endif %} | "[Inviting collaborators to a personal repository](/github/setting-up-and-managing-your-github-user-account/inviting-collaborators-to-a-personal-repository)" |
|
||||
| Change the visibility of the repository | "[Setting repository visibility](/github/administering-a-repository/setting-repository-visibility)" |{% ifversion fpt or ghec %}
|
||||
| Limit interactions with the repository | "[Limiting interactions in your repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)" |{% endif %}{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
| Rename a branch, including the default branch | "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)" |{% endif %}
|
||||
| Limit interactions with the repository | "[Limiting interactions in your repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)" |{% endif %}
|
||||
| Rename a branch, including the default branch | "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)" |
|
||||
| Merge a pull request on a protected branch, even if there are no approving reviews | "[About protected branches](/github/administering-a-repository/about-protected-branches)" |
|
||||
| Delete the repository | "[Deleting a repository](/repositories/creating-and-managing-repositories/deleting-a-repository)" |
|
||||
| Manage the repository's topics | "[Classifying your repository with topics](/github/administering-a-repository/classifying-your-repository-with-topics)" |{% ifversion fpt or ghec %}
|
||||
| Manage security and analysis settings for the repository | "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)" |{% endif %}{% ifversion fpt or ghec %}
|
||||
| Enable the dependency graph for a private repository | "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository#enabling-and-disabling-the-dependency-graph-for-a-private-repository)" |{% endif %}{% ifversion fpt or ghes > 3.1 or ghec or ghae %}
|
||||
| Delete and restore packages | "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" |{% endif %}{% ifversion ghes < 3.1 %}
|
||||
| Delete packages | "[Deleting packages](/packages/learn-github-packages/deleting-a-package)" |{% endif %}
|
||||
| Delete and restore packages | "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" |{% endif %}
|
||||
| Customize the repository's social media preview | "[Customizing your repository's social media preview](/github/administering-a-repository/customizing-your-repositorys-social-media-preview)" |
|
||||
| Create a template from the repository | "[Creating a template repository](/github/creating-cloning-and-archiving-repositories/creating-a-template-repository)" |{% ifversion fpt or ghes or ghae-issue-4864 or ghec %}
|
||||
| Control access to {% data variables.product.prodname_dependabot_alerts %} for vulnerable dependencies | "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)" |{% endif %}{% ifversion fpt or ghec %}
|
||||
@@ -51,8 +50,8 @@ The repository owner has full control of the repository. In addition to the acti
|
||||
| Define code owners for the repository | "[About code owners](/github/creating-cloning-and-archiving-repositories/about-code-owners)" |
|
||||
| Archive the repository | "[Archiving repositories](/repositories/archiving-a-github-repository/archiving-repositories)" |{% ifversion fpt or ghec %}
|
||||
| Create security advisories | "[About {% data variables.product.prodname_security_advisories %}](/github/managing-security-vulnerabilities/about-github-security-advisories)" |
|
||||
| Display a sponsor button | "[Displaying a sponsor button in your repository](/github/administering-a-repository/displaying-a-sponsor-button-in-your-repository)" |{% endif %}{% ifversion fpt or ghae or ghes > 3.0 or ghec %}
|
||||
| Allow or disallow auto-merge for pull requests | "[Managing auto-merge for pull requests in your repository](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository)" | {% endif %}
|
||||
| Display a sponsor button | "[Displaying a sponsor button in your repository](/github/administering-a-repository/displaying-a-sponsor-button-in-your-repository)" |{% endif %}
|
||||
| Allow or disallow auto-merge for pull requests | "[Managing auto-merge for pull requests in your repository](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository)" |
|
||||
|
||||
## Collaborator access for a repository owned by a user account
|
||||
|
||||
@@ -75,8 +74,8 @@ Collaborators can also perform the following actions.
|
||||
| Manage labels for issues and pull requests in the repository | "[Labeling issues and pull requests](/github/managing-your-work-on-github/labeling-issues-and-pull-requests)" |
|
||||
| Manage milestones for issues and pull requests in the repository | "[Creating and editing milestones for issues and pull requests](/github/managing-your-work-on-github/creating-and-editing-milestones-for-issues-and-pull-requests)" |
|
||||
| Mark an issue or pull request in the repository as a duplicate | "[About duplicate issues and pull requests](/github/managing-your-work-on-github/about-duplicate-issues-and-pull-requests)" |
|
||||
| Create, merge, and close pull requests in the repository | "[Proposing changes to your work with pull requests](/github/collaborating-with-issues-and-pull-requests/proposing-changes-to-your-work-with-pull-requests)" |{% ifversion fpt or ghae or ghes > 3.0 or ghec %}
|
||||
| Enable and disable auto-merge for a pull request | "[Automatically merging a pull request](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request)"{% endif %}
|
||||
| Create, merge, and close pull requests in the repository | "[Proposing changes to your work with pull requests](/github/collaborating-with-issues-and-pull-requests/proposing-changes-to-your-work-with-pull-requests)" |
|
||||
| Enable and disable auto-merge for a pull request | "[Automatically merging a pull request](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request)"
|
||||
| Apply suggested changes to pull requests in the repository |"[Incorporating feedback in your pull request](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/incorporating-feedback-in-your-pull-request)" |
|
||||
| Create a pull request from a fork of the repository | "[Creating a pull request from a fork](/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request-from-a-fork)" |
|
||||
| Submit a review on a pull request that affects the mergeability of the pull request | "[Reviewing proposed changes in a pull request](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request)" |
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Viewing people's roles in an organization
|
||||
intro: 'You can view a list of the people in your organization and filter by their role. For more information on organization roles, see "[Roles in an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization)."'
|
||||
permissions: "Organization members can see people's roles in the organization."
|
||||
permissions: Organization members can see people's roles in the organization.
|
||||
redirect_from:
|
||||
- /articles/viewing-people-s-roles-in-an-organization
|
||||
- /articles/viewing-peoples-roles-in-an-organization
|
||||
@@ -63,4 +63,4 @@ For more information about the enterprise owner role, see "[Roles in an enterpri
|
||||
|
||||

|
||||
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
@@ -119,7 +119,7 @@ steps:
|
||||
distribution: 'adopt'
|
||||
|
||||
- run: ant -noinput -buildfile build.xml
|
||||
- uses: actions/upload-artifact@v2
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Package
|
||||
path: build/jar
|
||||
|
||||
@@ -138,7 +138,7 @@ steps:
|
||||
uses: gradle/gradle-build-action@937999e9cc2425eddc7fd62d1053baf041147db7
|
||||
with:
|
||||
arguments: build
|
||||
- uses: actions/upload-artifact@v2
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Package
|
||||
path: build/libs
|
||||
|
||||
@@ -140,7 +140,7 @@ steps:
|
||||
distribution: 'adopt'
|
||||
- run: mvn --batch-mode --update-snapshots verify
|
||||
- run: mkdir staging && cp target/*.jar staging
|
||||
- uses: actions/upload-artifact@v2
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Package
|
||||
path: staging
|
||||
|
||||
@@ -218,7 +218,7 @@ jobs:
|
||||
- name: Test with dotnet
|
||||
run: dotnet test --logger trx --results-directory "TestResults-${{ matrix.dotnet-version }}"
|
||||
- name: Upload dotnet test results
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: dotnet-results-${{ matrix.dotnet-version }}
|
||||
path: TestResults-${{ matrix.dotnet-version }}
|
||||
|
||||
@@ -73,11 +73,9 @@ jobs:
|
||||
* `run: Test-Path resultsfile.log` - Check whether a file called `resultsfile.log` is present in the repository's root directory.
|
||||
* `Should -Be $true` - Uses Pester to define an expected result. If the result is unexpected, then {% data variables.product.prodname_actions %} flags this as a failed test. For example:
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
|
||||

|
||||
{% else %}
|
||||

|
||||
{% endif %}
|
||||
|
||||
|
||||
* `Invoke-Pester Unit.Tests.ps1 -Passthru` - Uses Pester to execute tests defined in a file called `Unit.Tests.ps1`. For example, to perform the same test described above, the `Unit.Tests.ps1` will contain the following:
|
||||
```
|
||||
@@ -215,7 +213,7 @@ jobs:
|
||||
shell: pwsh
|
||||
run: Invoke-Pester Unit.Tests.ps1 -Passthru | Export-CliXml -Path Unit.Tests.xml
|
||||
- name: Upload test results
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ubuntu-Unit-Tests
|
||||
path: Unit.Tests.xml
|
||||
|
||||
@@ -380,7 +380,7 @@ jobs:
|
||||
- name: Test with pytest
|
||||
run: pytest tests.py --doctest-modules --junitxml=junit/test-results-${{ matrix.python-version }}.xml
|
||||
- name: Upload pytest test results
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: pytest-results-${{ matrix.python-version }}
|
||||
path: junit/test-results-${{ matrix.python-version }}.xml
|
||||
|
||||
@@ -73,7 +73,6 @@ Storing an action in its own repository makes it easier for the {% data variable
|
||||
|
||||
{% ifversion fpt or ghec %}If you're building an action that you don't plan to make available to others, you {% else %} You{% endif %} can store the action's files in any location in your repository. If you plan to combine action, workflow, and application code in a single repository, we recommend storing actions in the `.github` directory. For example, `.github/actions/action-a` and `.github/actions/action-b`.
|
||||
|
||||
|
||||
## Compatibility with {% data variables.product.prodname_ghe_server %}
|
||||
|
||||
To ensure that your action is compatible with {% data variables.product.prodname_ghe_server %}, you should make sure that you do not use any hard-coded references to {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API URLs. You should instead use environment variables to refer to the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API:
|
||||
@@ -130,7 +129,7 @@ steps:
|
||||
|
||||
### Using a commit's SHA for release management
|
||||
|
||||
Each Git commit receives a calculated SHA value, which is unique and immutable. Your action's users might prefer to rely on a commit's SHA value, as this approach can be more reliable than specifying a tag, which could be deleted or moved. However, this means that users will not receive further updates made to the action. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}You must use a commit's full SHA value, and not an abbreviated value.{% else %}Using a commit's full SHA value instead of the abbreviated value can help prevent people from using a malicious commit that uses the same abbreviation.{% endif %}
|
||||
Each Git commit receives a calculated SHA value, which is unique and immutable. Your action's users might prefer to rely on a commit's SHA value, as this approach can be more reliable than specifying a tag, which could be deleted or moved. However, this means that users will not receive further updates made to the action. You must use a commit's full SHA value, and not an abbreviated value.
|
||||
|
||||
```yaml
|
||||
steps:
|
||||
|
||||
@@ -237,10 +237,7 @@ jobs:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
From your repository, click the **Actions** tab, and select the latest workflow run. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}Under **Jobs** or in the visualization graph, click **A job to say hello**. {% endif %}You should see "Hello Mona the Octocat" or the name you used for the `who-to-greet` input and the timestamp printed in the log.
|
||||
From your repository, click the **Actions** tab, and select the latest workflow run. Under **Jobs** or in the visualization graph, click **A job to say hello**. You should see "Hello Mona the Octocat" or the name you used for the `who-to-greet` input and the timestamp printed in the log.
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||

|
||||
{% else %}
|
||||

|
||||
{% endif %}
|
||||
|
||||
|
||||
@@ -268,12 +268,6 @@ jobs:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
From your repository, click the **Actions** tab, and select the latest workflow run. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}Under **Jobs** or in the visualization graph, click **A job to say hello**. {% endif %}You should see "Hello Mona the Octocat" or the name you used for the `who-to-greet` input and the timestamp printed in the log.
|
||||
From your repository, click the **Actions** tab, and select the latest workflow run. Under **Jobs** or in the visualization graph, click **A job to say hello**. You should see "Hello Mona the Octocat" or the name you used for the `who-to-greet` input and the timestamp printed in the log.
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||

|
||||
{% elsif ghes %}
|
||||

|
||||
{% else %}
|
||||

|
||||
{% endif %}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
---
|
||||
title: Sharing actions and workflows with your enterprise
|
||||
intro: 'You can share an action or workflow with your enterprise without publishing the action or workflow publicly.'
|
||||
intro: You can share an action or workflow with your enterprise without publishing the action or workflow publicly.
|
||||
versions:
|
||||
feature: 'internal-actions'
|
||||
feature: internal-actions
|
||||
type: tutorial
|
||||
topics:
|
||||
- Actions
|
||||
@@ -10,12 +10,6 @@ topics:
|
||||
shortTitle: Share with your enterprise
|
||||
---
|
||||
|
||||
{% note %}
|
||||
|
||||
**Note:** Allowing workflows to access actions in internal repositories is currently in beta and subject to change.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
## About {% data variables.product.prodname_actions %} access to internal repositories
|
||||
|
||||
If your organization is owned by an enterprise account, you can share actions and workflows within your enterprise, without publishing the action or workflow publicly, by allowing {% data variables.product.prodname_actions %} workflows to access an internal repository that contains the action or workflow.
|
||||
|
||||
@@ -29,8 +29,7 @@ You can set up a {% data variables.product.prodname_actions %} workflow to deplo
|
||||
|
||||
You can configure your CD workflow to run when a {% data variables.product.product_name %} event occurs (for example, when new code is pushed to the default branch of your repository), on a set schedule, manually, or when an external event occurs using the repository dispatch webhook. For more information about when your workflow can run, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)."
|
||||
|
||||
{% ifversion fpt or ghae or ghes > 3.0 or ghec %}
|
||||
{% data variables.product.prodname_actions %} provides features that give you more control over deployments. For example, you can use environments to require approval for a job to proceed, restrict which branches can trigger a workflow, or limit access to secrets. {% ifversion fpt or ghae or ghes > 3.1 or ghec %}You can use concurrency to limit your CD pipeline to a maximum of one in-progress deployment and one pending deployment. {% endif %}For more information about these features, see "[Deploying with GitHub Actions](/actions/deployment/deploying-with-github-actions)" and "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)."{% endif %}
|
||||
{% data variables.product.prodname_actions %} provides features that give you more control over deployments. For example, you can use environments to require approval for a job to proceed, restrict which branches can trigger a workflow, or limit access to secrets. {% ifversion fpt or ghae or ghes > 3.1 or ghec %}You can use concurrency to limit your CD pipeline to a maximum of one in-progress deployment and one pending deployment. {% endif %}For more information about these features, see "[Deploying with GitHub Actions](/actions/deployment/deploying-with-github-actions)" and "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)."
|
||||
|
||||
{% ifversion fpt or ghec or ghae-issue-4856 %}
|
||||
|
||||
@@ -44,12 +43,9 @@ You can configure your CD workflow to run when a {% data variables.product.produ
|
||||
|
||||
{% data reusables.actions.cd-templates-actions %}
|
||||
|
||||
{% ifversion fpt or ghae or ghes > 3.0 or ghec %}
|
||||
|
||||
## Further reading
|
||||
|
||||
- [Deploying with GitHub Actions](/actions/deployment/deploying-with-github-actions)
|
||||
- [Using environments for deployment](/actions/deployment/using-environments-for-deployment){% ifversion fpt or ghec %}
|
||||
- "[Managing billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions)"{% endif %}
|
||||
|
||||
{% endif %}
|
||||
|
||||
@@ -3,7 +3,7 @@ title: Deploying with GitHub Actions
|
||||
intro: Learn how to control deployments with features like environments and concurrency.
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghes: '>=3.1'
|
||||
ghes: '*'
|
||||
ghae: '*'
|
||||
ghec: '*'
|
||||
type: overview
|
||||
|
||||
@@ -4,9 +4,10 @@ shortTitle: About deployments
|
||||
intro: 'Learn how deployments can run with {% data variables.product.prodname_actions %} workflows.'
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
children:
|
||||
- /about-continuous-deployment
|
||||
- /deploying-with-github-actions
|
||||
---
|
||||
|
||||
|
||||
@@ -78,9 +78,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you
|
||||
|
||||
See the documentation for each action used below for the recommended IAM policies for the IAM user, and methods for handling the access key credentials.
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
5. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %}
|
||||
{% endif %}
|
||||
|
||||
## Creating the workflow
|
||||
|
||||
|
||||
@@ -66,9 +66,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you
|
||||
--settings DOCKER_REGISTRY_SERVER_URL=https://ghcr.io DOCKER_REGISTRY_SERVER_USERNAME=MY_REPOSITORY_OWNER DOCKER_REGISTRY_SERVER_PASSWORD=MY_PERSONAL_ACCESS_TOKEN
|
||||
```
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
5. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %}
|
||||
{% endif %}
|
||||
|
||||
## Creating the workflow
|
||||
|
||||
|
||||
@@ -16,7 +16,6 @@ topics:
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
This guide explains how to use {% data variables.product.prodname_actions %} to build and deploy a Java project to [Azure App Service](https://azure.microsoft.com/services/app-service/).
|
||||
@@ -53,9 +52,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you
|
||||
|
||||
{% data reusables.actions.create-azure-publish-profile %}
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
1. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %}
|
||||
{% endif %}
|
||||
|
||||
## Creating the workflow
|
||||
|
||||
@@ -98,7 +95,7 @@ jobs:
|
||||
run: mvn clean install
|
||||
|
||||
- name: Upload artifact for deployment job
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: java-app
|
||||
path: '{% raw %}${{ github.workspace }}{% endraw %}/target/*.jar'
|
||||
@@ -112,7 +109,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Download artifact from build job
|
||||
uses: actions/download-artifact@v2
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: java-app
|
||||
|
||||
|
||||
@@ -15,7 +15,6 @@ topics:
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
This guide explains how to use {% data variables.product.prodname_actions %} to build and deploy a .NET project to [Azure App Service](https://azure.microsoft.com/services/app-service/).
|
||||
@@ -52,9 +51,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you
|
||||
|
||||
{% data reusables.actions.create-azure-publish-profile %}
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
5. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %}
|
||||
{% endif %}
|
||||
|
||||
## Creating the workflow
|
||||
|
||||
@@ -108,7 +105,7 @@ jobs:
|
||||
run: dotnet publish -c Release -o {% raw %}${{env.DOTNET_ROOT}}{% endraw %}/myapp
|
||||
|
||||
- name: Upload artifact for deployment job
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: .net-app
|
||||
path: {% raw %}${{env.DOTNET_ROOT}}{% endraw %}/myapp
|
||||
@@ -122,7 +119,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Download artifact from build job
|
||||
uses: actions/download-artifact@v2
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: .net-app
|
||||
|
||||
|
||||
@@ -21,7 +21,6 @@ topics:
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
This guide explains how to use {% data variables.product.prodname_actions %} to build, test, and deploy a Node.js project to [Azure App Service](https://azure.microsoft.com/services/app-service/).
|
||||
@@ -58,9 +57,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you
|
||||
|
||||
{% data reusables.actions.create-azure-publish-profile %}
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
5. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %}
|
||||
{% endif %}
|
||||
|
||||
## Creating the workflow
|
||||
|
||||
@@ -103,7 +100,7 @@ jobs:
|
||||
npm run build --if-present
|
||||
npm run test --if-present
|
||||
- name: Upload artifact for deployment job
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: node-app
|
||||
path: .
|
||||
@@ -117,7 +114,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Download artifact from build job
|
||||
uses: actions/download-artifact@v2
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: node-app
|
||||
|
||||
|
||||
@@ -15,7 +15,6 @@ topics:
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
This guide explains how to use {% data variables.product.prodname_actions %} to build and deploy a PHP project to [Azure App Service](https://azure.microsoft.com/services/app-service/).
|
||||
@@ -52,9 +51,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you
|
||||
|
||||
{% data reusables.actions.create-azure-publish-profile %}
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
5. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %}
|
||||
{% endif %}
|
||||
|
||||
## Creating the workflow
|
||||
|
||||
@@ -119,7 +116,7 @@ jobs:
|
||||
run: composer validate --no-check-publish && composer install --prefer-dist --no-progress
|
||||
|
||||
- name: Upload artifact for deployment job
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: php-app
|
||||
path: .
|
||||
@@ -133,7 +130,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Download artifact from build job
|
||||
uses: actions/download-artifact@v2
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: php-app
|
||||
|
||||
|
||||
@@ -16,7 +16,6 @@ topics:
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
## Introduction
|
||||
|
||||
This guide explains how to use {% data variables.product.prodname_actions %} to build and deploy a Python project to [Azure App Service](https://azure.microsoft.com/services/app-service/).
|
||||
@@ -55,9 +54,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you
|
||||
|
||||
1. Add an app setting called `SCM_DO_BUILD_DURING_DEPLOYMENT` and set the value to `1`.
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
5. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %}
|
||||
{% endif %}
|
||||
|
||||
## Creating the workflow
|
||||
|
||||
@@ -114,7 +111,7 @@ jobs:
|
||||
# Optional: Add a step to run tests here (PyTest, Django test suites, etc.)
|
||||
|
||||
- name: Upload artifact for deployment jobs
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: python-app
|
||||
path: |
|
||||
@@ -129,7 +126,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Download artifact from build job
|
||||
uses: actions/download-artifact@v2
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: python-app
|
||||
path: .
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Deploying to Azure
|
||||
shortTitle: Deploy to Azure
|
||||
intro: Learn how to deploy to Azure App Service, Azure Kubernetes, and Azure Static Web App as part of your continuous deployment (CD) workflows.
|
||||
intro: 'Learn how to deploy to Azure App Service, Azure Kubernetes, and Azure Static Web App as part of your continuous deployment (CD) workflows.'
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghes: '*'
|
||||
@@ -17,3 +17,4 @@ children:
|
||||
- /deploying-to-azure-static-web-app
|
||||
- /deploying-to-azure-kubernetes-service
|
||||
---
|
||||
|
||||
|
||||
@@ -120,11 +120,9 @@ Store the name of your project as a secret named `GKE_PROJECT`. For more informa
|
||||
### (Optional) Configuring kustomize
|
||||
Kustomize is an optional tool used for managing YAML specs. After creating a `kustomization` file, the workflow below can be used to dynamically set fields of the image and pipe in the result to `kubectl`. For more information, see [kustomize usage](https://github.com/kubernetes-sigs/kustomize#usage).
|
||||
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
### (Optional) Configure a deployment environment
|
||||
|
||||
{% data reusables.actions.about-environments %}
|
||||
{% endif %}
|
||||
|
||||
## Creating the workflow
|
||||
|
||||
|
||||
@@ -12,3 +12,4 @@ children:
|
||||
- /deploying-to-azure
|
||||
- /deploying-to-google-kubernetes-engine
|
||||
---
|
||||
|
||||
|
||||
@@ -4,8 +4,9 @@ shortTitle: Deploying Xcode applications
|
||||
intro: 'You can sign Xcode apps within your continuous integration (CI) workflow by installing an Apple code signing certificate on {% data variables.product.prodname_actions %} runners.'
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
children:
|
||||
- /installing-an-apple-certificate-on-macos-runners-for-xcode-development
|
||||
- /installing-an-apple-certificate-on-macos-runners-for-xcode-development
|
||||
---
|
||||
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
---
|
||||
title: Managing your deployments
|
||||
shortTitle: Managing your deployments
|
||||
intro: 'You can review the past activity of your deployments.'
|
||||
intro: You can review the past activity of your deployments.
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
children:
|
||||
- /viewing-deployment-history
|
||||
---
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ redirect_from:
|
||||
---
|
||||
|
||||
|
||||
You can deliver deployments through {% ifversion fpt or ghae or ghes > 3.0 or ghec %}{% data variables.product.prodname_actions %} and environments or with {% endif %}the REST API and third party apps. {% ifversion fpt or ghae ghes > 3.0 or ghec %}For more information about using environments to deploy with {% data variables.product.prodname_actions %}, see "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)." {% endif %}For more information about deployments with the REST API, see "[Repositories](/rest/reference/repos#deployments)."
|
||||
You can deliver deployments through {% data variables.product.prodname_actions %} and environments or with the REST API and third party apps. {% ifversion fpt or ghae ghes > 3.0 or ghec %}For more information about using environments to deploy with {% data variables.product.prodname_actions %}, see "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)." {% endif %}For more information about deployments with the REST API, see "[Repositories](/rest/reference/repos#deployments)."
|
||||
|
||||
To view current and past deployments, click **Environments** on the home page of your repository.
|
||||
{% ifversion ghae %}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: About security hardening with OpenID Connect
|
||||
shortTitle: About security hardening with OpenID Connect
|
||||
intro: 'OpenID Connect allows your workflows to exchange short-lived tokens directly from your cloud provider.'
|
||||
intro: OpenID Connect allows your workflows to exchange short-lived tokens directly from your cloud provider.
|
||||
miniTocMaxHeadingLevel: 4
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
type: tutorial
|
||||
topics:
|
||||
@@ -164,7 +164,7 @@ You can configure a subject that filters for a specific [environment](/actions/d
|
||||
|
||||
#### Filtering for `pull_request` events
|
||||
|
||||
The subject claim includes the `pull_request` string when the workflow is triggered by a pull request event.
|
||||
The subject claim includes the `pull_request` string when the workflow is triggered by a pull request event, but only if the job doesn't reference an environment.
|
||||
|
||||
You can configure a subject that filters for the [`pull_request`](/actions/learn-github-actions/events-that-trigger-workflows#pull_request) event. In this example, the workflow run must have been triggered by a `pull_request` event in a repository named `octo-repo` that is owned by the `octo-org` organization:
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: Configuring OpenID Connect in Amazon Web Services
|
||||
shortTitle: Configuring OpenID Connect in Amazon Web Services
|
||||
intro: 'Use OpenID Connect within your workflows to authenticate with Amazon Web Services.'
|
||||
intro: Use OpenID Connect within your workflows to authenticate with Amazon Web Services.
|
||||
miniTocMaxHeadingLevel: 3
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
type: tutorial
|
||||
topics:
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: Configuring OpenID Connect in Azure
|
||||
shortTitle: Configuring OpenID Connect in Azure
|
||||
intro: 'Use OpenID Connect within your workflows to authenticate with Azure.'
|
||||
intro: Use OpenID Connect within your workflows to authenticate with Azure.
|
||||
miniTocMaxHeadingLevel: 3
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
type: tutorial
|
||||
topics:
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: Configuring OpenID Connect in cloud providers
|
||||
shortTitle: Configuring OpenID Connect in cloud providers
|
||||
intro: 'Use OpenID Connect within your workflows to authenticate with cloud providers.'
|
||||
intro: Use OpenID Connect within your workflows to authenticate with cloud providers.
|
||||
miniTocMaxHeadingLevel: 3
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
type: tutorial
|
||||
topics:
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: Configuring OpenID Connect in Google Cloud Platform
|
||||
shortTitle: Configuring OpenID Connect in Google Cloud Platform
|
||||
intro: 'Use OpenID Connect within your workflows to authenticate with Google Cloud Platform.'
|
||||
intro: Use OpenID Connect within your workflows to authenticate with Google Cloud Platform.
|
||||
miniTocMaxHeadingLevel: 3
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
type: tutorial
|
||||
topics:
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: Configuring OpenID Connect in HashiCorp Vault
|
||||
shortTitle: Configuring OpenID Connect in HashiCorp Vault
|
||||
intro: 'Use OpenID Connect within your workflows to authenticate with HashiCorp Vault.'
|
||||
intro: Use OpenID Connect within your workflows to authenticate with HashiCorp Vault.
|
||||
miniTocMaxHeadingLevel: 3
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
type: tutorial
|
||||
topics:
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
---
|
||||
title: Security hardening your deployments
|
||||
shortTitle: Security hardening your deployments
|
||||
intro: 'Use OpenID Connect within your workflows to authenticate with your cloud provider.'
|
||||
intro: Use OpenID Connect within your workflows to authenticate with your cloud provider.
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
children:
|
||||
- /about-security-hardening-with-openid-connect
|
||||
@@ -15,3 +15,4 @@ children:
|
||||
- /configuring-openid-connect-in-cloud-providers
|
||||
- /using-openid-connect-with-reusable-workflows
|
||||
---
|
||||
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
---
|
||||
title: Using OpenID Connect with reusable workflows
|
||||
shortTitle: Using OpenID Connect with reusable workflows
|
||||
intro: 'You can use reusable workflows with OIDC to standardize and security harden your deployment steps.'
|
||||
intro: You can use reusable workflows with OIDC to standardize and security harden your deployment steps.
|
||||
miniTocMaxHeadingLevel: 3
|
||||
redirect_from:
|
||||
- /actions/deployment/security-hardening-your-deployments/using-oidc-with-your-reusable-workflows
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4757-and-5856'
|
||||
ghae: issue-4757-and-5856
|
||||
ghec: '*'
|
||||
ghes: '>=3.5'
|
||||
type: how_to
|
||||
|
||||
@@ -4,8 +4,9 @@ shortTitle: Targeting different environments
|
||||
intro: You can configure environments with protection rules and secrets. A workflow job that references an environment must follow any protection rules for the environment before running or accessing the environment's secrets.
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghae: 'issue-4856'
|
||||
ghae: issue-4856
|
||||
ghec: '*'
|
||||
children:
|
||||
- /using-environments-for-deployment
|
||||
- /using-environments-for-deployment
|
||||
---
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ redirect_from:
|
||||
- /actions/deployment/using-environments-for-deployment
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghes: '>=3.1'
|
||||
ghes: '*'
|
||||
ghae: '*'
|
||||
ghec: '*'
|
||||
---
|
||||
|
||||
@@ -13,7 +13,8 @@ learningTracks:
|
||||
- continuous_integration
|
||||
- continuous_deployment
|
||||
- deploy_to_the_cloud
|
||||
- '{% ifversion ghec or ghes or ghae %}adopting_github_actions_for_your_enterprise{% endif %}'
|
||||
- adopting_github_actions_for_your_enterprise_ghec
|
||||
- adopting_github_actions_for_your_enterprise_ghes_and_ghae
|
||||
- hosting_your_own_runners
|
||||
- create_actions
|
||||
includeGuides:
|
||||
|
||||
@@ -12,13 +12,16 @@ versions:
|
||||
type: overview
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
## About self-hosted runners
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-description %} Self-hosted runners can be physical, virtual, in a container, on-premises, or in a cloud.
|
||||
A self-hosted runner is a system that you deploy and manage to execute jobs from {% data variables.product.prodname_actions %} on {% ifversion ghae or ghec %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. For more information about {% data variables.product.prodname_actions %}, see "[Understanding {% data variables.product.prodname_actions %}](/actions/learn-github-actions/understanding-github-actions){% ifversion fpt %}."{% elsif ghec or ghes or ghae %}" and "[About {% data variables.product.prodname_actions %} for enterprises](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/about-github-actions-for-enterprises)."{% endif %}
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-description %} {% data reusables.actions.self-hosted-runner-locations %}
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-architecture %} {% data reusables.actions.runner-app-open-source %} When a new version is released, the runner application automatically updates itself when a job is assigned to the runner, or within a week of release if the runner hasn't been assigned any jobs.
|
||||
|
||||
You can add self-hosted runners at various levels in the management hierarchy:
|
||||
- Repository-level runners are dedicated to a single repository.
|
||||
@@ -59,7 +62,7 @@ You can use any machine as a self-hosted runner as long at it meets these requir
|
||||
* The machine has enough hardware resources for the type of workflows you plan to run. The self-hosted runner application itself only requires minimal resources.
|
||||
* If you want to run workflows that use Docker container actions or service containers, you must use a Linux machine and Docker must be installed.
|
||||
|
||||
{% ifversion fpt or ghes > 3.2 or ghec %}
|
||||
{% ifversion fpt or ghes > 3.2 or ghec or ghae-issue-4462 %}
|
||||
## Autoscaling your self-hosted runners
|
||||
|
||||
You can automatically increase or decrease the number of self-hosted runners in your environment in response to the webhook events you receive. For more information, see "[Autoscaling with self-hosted runners](/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners)."
|
||||
@@ -133,12 +136,7 @@ The self-hosted runner polls {% data variables.product.product_name %} to retrie
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-ports-protocols %}
|
||||
|
||||
{% ifversion ghae %}
|
||||
You must ensure that the self-hosted runner has appropriate network access to communicate with the {% data variables.product.prodname_ghe_managed %} URL and its subdomains.
|
||||
For example, if your instance name is `octoghae`, then you will need to allow the self-hosted runner to access `octoghae.githubenterprise.com`, `api.octoghae.githubenterprise.com`, and `codeload.octoghae.githubenterprise.com`.
|
||||
|
||||
If you use an IP address allow list for your {% data variables.product.prodname_dotcom %} organization or enterprise account, you must add your self-hosted runner's IP address to the allow list. For more information, see "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list)."
|
||||
{% endif %}
|
||||
{% data reusables.actions.self-hosted-runner-communications-for-ghae %}
|
||||
|
||||
{% ifversion fpt or ghec %}
|
||||
|
||||
@@ -242,3 +240,11 @@ Untrusted workflows running on your self-hosted runner pose significant security
|
||||
* Persisting unwanted or dangerous data on the machine.
|
||||
|
||||
For more information about security hardening for self-hosted runners, see "[Security hardening for {% data variables.product.prodname_actions %}](/actions/security-guides/security-hardening-for-github-actions#hardening-for-self-hosted-runners)."
|
||||
|
||||
{% ifversion ghec or ghes or ghae %}
|
||||
|
||||
## Further reading
|
||||
|
||||
- "[Getting started with self-hosted runners for your enterprise](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise)"
|
||||
|
||||
{% endif %}
|
||||
|
||||
@@ -13,7 +13,6 @@ type: tutorial
|
||||
shortTitle: Add self-hosted runners
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
@@ -33,6 +32,16 @@ For more information, see "[About self-hosted runners](/github/automating-your-w
|
||||
{% endwarning %}
|
||||
{% endif %}
|
||||
|
||||
{% ifversion fpt or ghec or ghes > 3.2 %}
|
||||
|
||||
You can set up automation to scale the number of self-hosted runners. For more information, see "[Autoscaling with self-hosted runners](/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners)."
|
||||
|
||||
{% endif %}
|
||||
|
||||
## Prerequisites
|
||||
|
||||
{% data reusables.actions.self-hosted-runners-prerequisites %}
|
||||
|
||||
## Adding a self-hosted runner to a repository
|
||||
|
||||
You can add self-hosted runners to a single repository. To add a self-hosted runner to a user repository, you must be the repository owner. For an organization repository, you must be an organization owner or have admin access to the repository. For information about how to add a self-hosted runner with the REST API, see "[Self-hosted runners](/rest/reference/actions#self-hosted-runners)."
|
||||
@@ -53,6 +62,8 @@ You can add self-hosted runners to a single repository. To add a self-hosted run
|
||||
{% endif %}
|
||||
{% data reusables.actions.self-hosted-runner-check-installation-success %}
|
||||
|
||||
For more information, see "[Monitoring and troubleshooting self-hosted runners](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners)."
|
||||
|
||||
## Adding a self-hosted runner to an organization
|
||||
|
||||
You can add self-hosted runners at the organization level, where they can be used to process jobs for multiple repositories in an organization. To add a self-hosted runner to an organization, you must be an organization owner. For information about how to add a self-hosted runner with the REST API, see "[Self-hosted runners](/rest/reference/actions#self-hosted-runners)."
|
||||
@@ -71,9 +82,10 @@ You can add self-hosted runners at the organization level, where they can be use
|
||||
1. Under {% ifversion ghes > 3.1 or ghae %}"Runners", click **Add new**, then click **New runner**.{% elsif ghes < 3.2 %}"Self-hosted runners", click **Add runner**."{% endif %}
|
||||
{% data reusables.actions.self-hosted-runner-configure %}
|
||||
{% endif %}
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-check-installation-success %}
|
||||
|
||||
For more information, see "[Monitoring and troubleshooting self-hosted runners](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners)."
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-public-repo-access %}
|
||||
|
||||
## Adding a self-hosted runner to an enterprise
|
||||
@@ -81,29 +93,20 @@ You can add self-hosted runners at the organization level, where they can be use
|
||||
{% ifversion fpt %}If you use {% data variables.product.prodname_ghe_cloud %}, you{% elsif ghec or ghes or ghae %}You{% endif %} can add self-hosted runners to an enterprise, where they can be assigned to multiple organizations. The organization admins are then able to control which repositories can use it. {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-enterprise).{% endif %}
|
||||
|
||||
{% ifversion ghec or ghes or ghae %}
|
||||
|
||||
New runners are assigned to the default group. You can modify the runner's group after you've registered the runner. For more information, see "[Managing access to self-hosted runners](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)."
|
||||
|
||||
{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %}
|
||||
To add a self-hosted runner to an enterprise account, you must be an enterprise owner. For information about how to add a self-hosted runner with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runners).
|
||||
|
||||
{% data reusables.enterprise-accounts.access-enterprise %}
|
||||
{% data reusables.enterprise-accounts.policies-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-runners-tab %}
|
||||
1. Click **New runner**.
|
||||
{% data reusables.actions.self-hosted-runner-configure %}
|
||||
{% elsif ghae or ghes < 3.4 %}
|
||||
To add a self-hosted runner at the enterprise level of {% data variables.product.product_location %}, you must be a site administrator.
|
||||
{% data reusables.enterprise-accounts.access-enterprise %}
|
||||
{% data reusables.enterprise-accounts.policies-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-runners-tab %}
|
||||
1. Click **Add new**, then click **New runner**.
|
||||
{% data reusables.actions.self-hosted-runner-configure %}
|
||||
To add a self-hosted runner to an enterprise, you must be an enterprise owner. For information about how to add a self-hosted runner with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runners).
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-add-to-enterprise %}
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-check-installation-success %}
|
||||
|
||||
For more information, see "[Monitoring and troubleshooting self-hosted runners](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners)."
|
||||
|
||||
{% data reusables.actions.self-hosted-runner-public-repo-access %}
|
||||
|
||||
### Making enterprise runners available to repositories
|
||||
@@ -114,3 +117,11 @@ To make an enterprise-level self-hosted runner group available to an organizatio
|
||||
|
||||
For more information on changing runner group access settings, see "[Managing access to self-hosted runners using groups](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."
|
||||
{% endif %}
|
||||
|
||||
{% ifversion ghec or ghes or ghae %}
|
||||
|
||||
## Further reading
|
||||
|
||||
- "[Getting started with self-hosted runners for your enterprise](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise)"
|
||||
|
||||
{% endif %}
|
||||
|
||||
@@ -5,10 +5,10 @@ versions:
|
||||
fpt: '*'
|
||||
ghec: '*'
|
||||
ghes: '>3.2'
|
||||
ghae: 'issue-4462'
|
||||
type: overview
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
@@ -13,7 +13,6 @@ defaultPlatform: linux
|
||||
shortTitle: Run runner app on startup
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
@@ -79,6 +78,12 @@ You can manage the runner service in the Windows **Services** application, or yo
|
||||
```
|
||||
{% endmac %}
|
||||
|
||||
The command takes an optional `user` argument to install the service as a different user.
|
||||
|
||||
```shell
|
||||
./svc.sh install --user <em>USERNAME</em>
|
||||
```
|
||||
|
||||
## Starting the service
|
||||
|
||||
Start the service with the following command:
|
||||
|
||||
@@ -27,6 +27,6 @@ children:
|
||||
- /monitoring-and-troubleshooting-self-hosted-runners
|
||||
- /removing-self-hosted-runners
|
||||
---
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
@@ -12,7 +12,6 @@ type: tutorial
|
||||
shortTitle: Manage runner groups
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
@@ -69,17 +68,19 @@ When creating a group, you must choose a policy that defines which repositories
|
||||

|
||||
1. Enter a name for your runner group, and assign a policy for repository access.
|
||||
|
||||
{% ifversion ghes or ghae %} You can configure a runner group to be accessible to a specific list of repositories, or to all repositories in the organization. By default, only private repositories can access runners in a runner group, but you can override this. This setting can't be overridden if configuring an organization's runner group that was shared by an enterprise.{% endif %}
|
||||
|
||||
You can configure a runner group to be accessible to a specific list of repositories, or to all repositories in the organization.{% ifversion ghec or ghes %} By default, only private repositories can access runners in a runner group, but you can override this. This setting can't be overridden if configuring an organization's runner group that was shared by an enterprise.{% endif %}
|
||||
|
||||
{%- ifversion ghes %}
|
||||
{% warning %}
|
||||
|
||||
**Warning**
|
||||
**Warning**:
|
||||
|
||||
{% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
|
||||
{% endwarning %}
|
||||
{%- endif %}
|
||||
|
||||

|
||||
1. Click **Save group** to create the group and apply the policy.
|
||||
@@ -93,49 +94,29 @@ Self-hosted runners are automatically assigned to the default group when created
|
||||
|
||||
When creating a group, you must choose a policy that defines which organizations have access to the runner group.
|
||||
|
||||
{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %}
|
||||
{% data reusables.enterprise-accounts.access-enterprise %}
|
||||
{% data reusables.enterprise-accounts.policies-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-runner-groups-tab %}
|
||||
1. Click **New runner group**.
|
||||
{% data reusables.actions.runner-group-assign-policy-org %}
|
||||
{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %}
|
||||
1. To choose a policy for organization access, select the **Organization access** drop-down, and click a policy. You can configure a runner group to be accessible to a specific list of organizations, or all organizations in the enterprise.{% ifversion ghes %} By default, only private repositories can access runners in a runner group, but you can override this.{% endif %}
|
||||
|
||||
{%- ifversion ghec or ghes %}
|
||||
{% warning %}
|
||||
|
||||
**Warning**
|
||||
**Warning**:
|
||||
|
||||
{% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
|
||||
{% endwarning %}
|
||||
{% data reusables.actions.self-hosted-runner-create-group %}
|
||||
{% elsif ghae or ghes < 3.4 %}
|
||||
{% data reusables.enterprise-accounts.access-enterprise %}
|
||||
{% data reusables.enterprise-accounts.policies-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-runners-tab %}
|
||||
1. Click **Add new**, and then **New group**.
|
||||
{%- endif %}
|
||||
{%- ifversion ghec or ghes %}
|
||||
|
||||

|
||||
1. Enter a name for your runner group, and assign a policy for organization access.
|
||||

|
||||
{%- elsif ghae %}
|
||||
|
||||
You can configure a runner group to be accessible to a specific list of organizations, or all organizations in the enterprise. By default, only private repositories can access runners in a runner group, but you can override this. This setting can't be overridden if configuring an organization's runner group that was shared by an enterprise.
|
||||
|
||||
{% warning %}
|
||||
|
||||
**Warning**
|
||||
|
||||
{% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
|
||||
{% endwarning %}
|
||||
|
||||

|
||||

|
||||
{%- endif %}
|
||||
1. Click **Save group** to create the group and apply the policy.
|
||||
{% endif %}
|
||||
|
||||
{% endif %}
|
||||
|
||||
## Changing the access policy of a self-hosted runner group
|
||||
@@ -146,15 +127,17 @@ You can update the access policy of a runner group, or rename a runner group.
|
||||
{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %}
|
||||
1. Modify the access options, or change the runner group name.
|
||||
|
||||
{%- ifversion fpt or ghec or ghes %}
|
||||
{% warning %}
|
||||
|
||||
**Warning**
|
||||
**Warning**:
|
||||
|
||||
{% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
|
||||
{% endwarning %}
|
||||
{%- endif %}
|
||||
{% elsif ghae or ghes < 3.4 %}
|
||||
{% data reusables.actions.self-hosted-runner-configure-runner-group-access %}
|
||||
{% endif %}
|
||||
@@ -181,7 +164,7 @@ If you don't specify a runner group during the registration process, your new se
|
||||
{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %}
|
||||
{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %}
|
||||
1. In the "Runners" list, click the runner that you want to configure.
|
||||
2. Select the Runner group dropdown menu.
|
||||
2. Select the **Runner group** drop-down.
|
||||
3. In "Move runner to group", choose a destination group for the runner.
|
||||
{% elsif ghae or ghes < 3.4 %}
|
||||
1. In the {% ifversion ghes > 3.1 or ghae %}"Runner groups"{% elsif ghes < 3.2 %}"Self-hosted runners"{% endif %} section of the settings page, locate the current group of the runner you want to move and expand the list of group members.
|
||||
|
||||
@@ -15,7 +15,6 @@ defaultPlatform: linux
|
||||
shortTitle: Monitor & troubleshoot
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
@@ -13,7 +13,6 @@ type: tutorial
|
||||
shortTitle: Remove self-hosted runners
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
@@ -12,7 +12,6 @@ type: tutorial
|
||||
shortTitle: Proxy servers
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@ type: tutorial
|
||||
shortTitle: Label runners
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
@@ -13,7 +13,6 @@ type: tutorial
|
||||
shortTitle: Use runners in a workflow
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
|
||||
@@ -25,11 +25,11 @@ featuredLinks:
|
||||
- /actions/learn-github-actions/environment-variables
|
||||
- /actions/security-guides/encrypted-secrets
|
||||
videos:
|
||||
- title: "Inside GitHub: How we use GitHub Actions – Brian Douglas"
|
||||
- title: 'Inside GitHub: How we use GitHub Actions – Brian Douglas'
|
||||
href: 'https://www.youtube-nocookie.com/embed/MW0V5Q9WJu4'
|
||||
- title: "Advanced GitHub Actions – Jennifer Schelkopf"
|
||||
- title: Advanced GitHub Actions – Jennifer Schelkopf
|
||||
href: 'https://www.youtube-nocookie.com/embed/wWOH44Lscoc'
|
||||
- title: "GitHub Actions in action – Karan MV"
|
||||
- title: GitHub Actions in action – Karan MV
|
||||
href: 'https://www.youtube-nocookie.com/embed/4SWO0Pc76CU'
|
||||
videosHeading: GitHub Universe 2021 videos
|
||||
product_video: 'https://www.youtube-nocookie.com/embed/cP0I9w2coGU'
|
||||
|
||||
@@ -517,7 +517,7 @@ jobs:
|
||||
./build.sh --log-path ${{ runner.temp }}/build_logs
|
||||
- name: Upload logs on fail
|
||||
if: ${{ failure() }}
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Build failure logs
|
||||
path: ${{ runner.temp }}/build_logs
|
||||
@@ -599,7 +599,7 @@ jobs:
|
||||
- uses: actions/checkout@v2
|
||||
- run: npm test > test-job-${{ strategy.job-index }}.txt
|
||||
- name: Upload logs
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Build log for job ${{ strategy.job-index }}
|
||||
path: test-job-${{ strategy.job-index }}.txt
|
||||
|
||||
@@ -75,7 +75,7 @@ jobs:
|
||||
run: |
|
||||
expr 1 + 1 > output.log
|
||||
- name: Upload output file
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: output-log-file
|
||||
path: output.log
|
||||
@@ -88,7 +88,7 @@ jobs:
|
||||
example-job:
|
||||
steps:
|
||||
- name: Download a single artifact
|
||||
uses: actions/download-artifact@v2
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: output-log-file
|
||||
```
|
||||
|
||||
@@ -26,7 +26,21 @@ topics:
|
||||
|
||||
{% data variables.product.prodname_actions %} goes beyond just DevOps and lets you run workflows when other events happen in your repository. For example, you can run a workflow to automatically add the appropriate labels whenever someone creates a new issue in your repository.
|
||||
|
||||
{% data variables.product.prodname_dotcom %} provides Linux, Windows, and macOS virtual machines to run your workflows, or you can host your own self-hosted runners in your own data center or cloud infrastructure.
|
||||
{% ifversion fpt or ghec %}
|
||||
|
||||
{% data variables.product.prodname_dotcom %} provides Linux, Windows, and macOS virtual machines to run your workflows, or you can host your own self-hosted runners in your own data center or cloud infrastructure.
|
||||
|
||||
{% elsif ghes or ghae %}
|
||||
|
||||
You must host your own Linux, Windows, or macOS virtual machines to run workflows for {% data variables.product.product_location %}. {% data reusables.actions.self-hosted-runner-locations %}
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% ifversion ghec or ghes or ghae %}
|
||||
|
||||
For more information about introducing {% data variables.product.prodname_actions %} to your enterprise, see "[Introducing {% data variables.product.prodname_actions %} to your enterprise](/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/introducing-github-actions-to-your-enterprise)."
|
||||
|
||||
{% endif %}
|
||||
|
||||
## The components of {% data variables.product.prodname_actions %}
|
||||
|
||||
@@ -225,7 +239,7 @@ In this diagram, you can see the workflow file you just created and how the {% d
|
||||
|
||||
## Viewing the workflow's activity
|
||||
|
||||
Once your workflow has started running, you can {% ifversion fpt or ghes > 3.0 or ghae or ghec %}see a visualization graph of the run's progress and {% endif %}view each step's activity on {% data variables.product.prodname_dotcom %}.
|
||||
Once your workflow has started running, you can see a visualization graph of the run's progress and view each step's activity on {% data variables.product.prodname_dotcom %}.
|
||||
|
||||
{% data reusables.repositories.navigate-to-repo %}
|
||||
1. Under your repository name, click **Actions**.
|
||||
@@ -234,20 +248,10 @@ Once your workflow has started running, you can {% ifversion fpt or ghes > 3.0 o
|
||||

|
||||
1. Under "Workflow runs", click the name of the run you want to see.
|
||||

|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
1. Under **Jobs** or in the visualization graph, click the job you want to see.
|
||||

|
||||
{% endif %}
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
1. View the results of each step.
|
||||

|
||||
{% elsif ghes %}
|
||||
1. Click on the job name to see the results of each step.
|
||||

|
||||
{% else %}
|
||||
1. Click on the job name to see the results of each step.
|
||||

|
||||
{% endif %}
|
||||
|
||||
## Next steps
|
||||
|
||||
|
||||
@@ -21,11 +21,7 @@ versions:
|
||||
1. From the list of workflow runs, click the name of the `queued` or `in progress` run that you want to cancel.
|
||||

|
||||
1. In the upper-right corner of the workflow, click **Cancel workflow**.
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||

|
||||
{% else %}
|
||||

|
||||
{% endif %}
|
||||

|
||||
|
||||
## Steps {% data variables.product.prodname_dotcom %} takes to cancel a workflow run
|
||||
|
||||
|
||||
@@ -23,11 +23,9 @@ By default, {% data variables.product.product_name %} stores build logs and arti
|
||||
{% data reusables.repositories.navigate-to-workflow %}
|
||||
{% data reusables.repositories.view-run %}
|
||||
1. Under **Artifacts**, click the artifact you want to download.
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
|
||||

|
||||
{% else %}
|
||||

|
||||
{% endif %}
|
||||
|
||||
|
||||
{% endwebui %}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Managing workflow runs
|
||||
shortTitle: Managing workflow runs
|
||||
intro: 'You can re-run or cancel a workflow, {% ifversion fpt or ghes > 3.0 or ghae %}review deployments, {% endif %}view billable job execution minutes, and download artifacts.'
|
||||
intro: 'You can re-run or cancel a workflow, {% ifversion fpt or ghes or ghae %}review deployments, {% endif %}view billable job execution minutes, and download artifacts.'
|
||||
redirect_from:
|
||||
- /actions/configuring-and-managing-workflows/managing-a-workflow-run
|
||||
- /articles/managing-a-workflow-run
|
||||
|
||||
@@ -29,11 +29,9 @@ shortTitle: Remove workflow artifacts
|
||||
{% data reusables.repositories.navigate-to-workflow %}
|
||||
{% data reusables.repositories.view-run %}
|
||||
1. Under **Artifacts**, click {% octicon "trash" aria-label="The trash icon" %} next to the artifact you want to remove.
|
||||
{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
|
||||
|
||||

|
||||
{% else %}
|
||||

|
||||
{% endif %}
|
||||
|
||||
|
||||
## Setting the retention period for an artifact
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ intro: You can approve or reject jobs awaiting review.
|
||||
product: '{% data reusables.gated-features.environments %}'
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghes: '>=3.1'
|
||||
ghes: '*'
|
||||
ghae: '*'
|
||||
ghec: '*'
|
||||
---
|
||||
|
||||