@@ -8,6 +8,19 @@
|
||||
// cacheControlYear(res)
|
||||
// res.send(body)
|
||||
//
|
||||
// Or, if you want to make it definitely not cache:
|
||||
//
|
||||
// const noCacheControl = getCacheControl(0) // you can use `false` too
|
||||
// ...
|
||||
// noControlYear(res)
|
||||
// res.send(body)
|
||||
//
|
||||
export function cacheControlFactory(maxAge = 60 * 60, public_ = true) {
|
||||
return (res) => res.set('cache-control', `${public_ ? 'public, ' : ''}max-age=${maxAge}`)
|
||||
return (res) => {
|
||||
if (maxAge) {
|
||||
res.set('cache-control', `${public_ ? 'public, ' : ''}max-age=${maxAge}`)
|
||||
} else {
|
||||
res.set('cache-control', 'private, no-store')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,12 @@
|
||||
import patterns from '../../lib/patterns.js'
|
||||
import { URL } from 'url'
|
||||
import languages from '../../lib/languages.js'
|
||||
import languages, { languageKeys } from '../../lib/languages.js'
|
||||
import { cacheControlFactory } from '../cache-control.js'
|
||||
|
||||
const cacheControl = cacheControlFactory(60 * 60 * 24) // one day
|
||||
const noCacheControl = cacheControlFactory(0)
|
||||
|
||||
const languagePrefixURIRegex = new RegExp(`^/(${languageKeys.join('|')})/`)
|
||||
|
||||
export default function handleRedirects(req, res, next) {
|
||||
// never redirect assets
|
||||
@@ -19,7 +25,7 @@ export default function handleRedirects(req, res, next) {
|
||||
language = req.context.userLanguage
|
||||
}
|
||||
|
||||
res.set('cache-control', 'private, no-store')
|
||||
noCacheControl(res)
|
||||
return res.redirect(302, `/${language}`)
|
||||
}
|
||||
|
||||
@@ -63,7 +69,11 @@ export default function handleRedirects(req, res, next) {
|
||||
return next()
|
||||
}
|
||||
|
||||
// do the redirect!
|
||||
// do the redirect if the from-URL already had a language in it
|
||||
if (languagePrefixURIRegex.test(req.path)) {
|
||||
cacheControl(res)
|
||||
}
|
||||
|
||||
return res.redirect(301, redirect)
|
||||
}
|
||||
|
||||
|
||||
@@ -609,6 +609,8 @@ describe('server', () => {
|
||||
test('redirects old articles to their English URL', async () => {
|
||||
const res = await get('/articles/deleting-a-team')
|
||||
expect(res.statusCode).toBe(301)
|
||||
// no cache control because a language prefix had to be injected
|
||||
expect(res.headers['cache-control']).toBeUndefined()
|
||||
})
|
||||
|
||||
test('redirects old articles to their slugified URL', async () => {
|
||||
@@ -629,12 +631,21 @@ describe('server', () => {
|
||||
const res = await get('/articles/deleting-a-team')
|
||||
expect(res.statusCode).toBe(301)
|
||||
expect(res.headers.location.startsWith('/en/')).toBe(true)
|
||||
expect(res.headers['cache-control']).toBeUndefined()
|
||||
})
|
||||
|
||||
test('redirects that not only injects /en/ should have cache-control', async () => {
|
||||
const res = await get('/en/articles/deleting-a-team')
|
||||
expect(res.statusCode).toBe(301)
|
||||
expect(res.headers['cache-control']).toContain('public')
|
||||
expect(res.headers['cache-control']).toMatch(/max-age=\d+/)
|
||||
})
|
||||
|
||||
test('redirects Desktop Classic paths to desktop.github.com', async () => {
|
||||
const res = await get('/desktop-classic')
|
||||
expect(res.statusCode).toBe(301)
|
||||
expect(res.headers.location).toBe('https://desktop.github.com')
|
||||
expect(res.headers['cache-control']).toBeUndefined()
|
||||
})
|
||||
|
||||
// this oneoff redirect is temporarily disabled because it introduces too much complexity
|
||||
@@ -646,6 +657,8 @@ describe('server', () => {
|
||||
expect(res.headers.location).toBe(
|
||||
'/en/github/managing-subscriptions-and-notifications-on-github'
|
||||
)
|
||||
expect(res.headers['cache-control']).toContain('public')
|
||||
expect(res.headers['cache-control']).toMatch(/max-age=\d+/)
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
@@ -11,14 +11,17 @@ translations/pt-BR/content/actions/automating-builds-and-tests/building-and-test
|
||||
translations/pt-BR/content/actions/automating-builds-and-tests/building-and-testing-python.md,rendering error
|
||||
translations/pt-BR/content/actions/creating-actions/creating-a-javascript-action.md,rendering error
|
||||
translations/pt-BR/content/actions/creating-actions/metadata-syntax-for-github-actions.md,rendering error
|
||||
translations/pt-BR/content/actions/creating-actions/releasing-and-maintaining-actions.md,rendering error
|
||||
translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services.md,rendering error
|
||||
translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-azure.md,rendering error
|
||||
translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-google-cloud-platform.md,rendering error
|
||||
translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md,rendering error
|
||||
translations/pt-BR/content/actions/deployment/targeting-different-environments/using-environments-for-deployment.md,rendering error
|
||||
translations/pt-BR/content/actions/guides.md,rendering error
|
||||
translations/pt-BR/content/actions/hosting-your-own-runners/about-self-hosted-runners.md,rendering error
|
||||
translations/pt-BR/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md,Listed in localization-support#489
|
||||
translations/pt-BR/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md,rendering error
|
||||
translations/pt-BR/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md,rendering error
|
||||
translations/pt-BR/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md,rendering error
|
||||
translations/pt-BR/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md,rendering error
|
||||
translations/pt-BR/content/actions/hosting-your-own-runners/using-a-proxy-server-with-self-hosted-runners.md,rendering error
|
||||
@@ -96,8 +99,10 @@ translations/pt-BR/content/code-security/code-scanning/integrating-with-code-sca
|
||||
translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md,rendering error
|
||||
translations/pt-BR/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md,rendering error
|
||||
translations/pt-BR/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md,rendering error
|
||||
translations/pt-BR/content/code-security/guides.md,rendering error
|
||||
translations/pt-BR/content/code-security/secret-scanning/about-secret-scanning.md,rendering error
|
||||
translations/pt-BR/content/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning.md,rendering error
|
||||
translations/pt-BR/content/code-security/secret-scanning/managing-alerts-from-secret-scanning.md,rendering error
|
||||
translations/pt-BR/content/code-security/security-overview/about-the-security-overview.md,rendering error
|
||||
translations/pt-BR/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/automating-dependabot-with-github-actions.md,rendering error
|
||||
translations/pt-BR/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies.md,rendering error
|
||||
@@ -123,6 +128,7 @@ translations/pt-BR/content/codespaces/developing-in-codespaces/index.md,renderin
|
||||
translations/pt-BR/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md,rendering error
|
||||
translations/pt-BR/content/codespaces/developing-in-codespaces/using-source-control-in-your-codespace.md,rendering error
|
||||
translations/pt-BR/content/codespaces/getting-started/deep-dive.md,rendering error
|
||||
translations/pt-BR/content/codespaces/guides.md,rendering error
|
||||
translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization.md,rendering error
|
||||
translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization.md,rendering error
|
||||
translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md,rendering error
|
||||
@@ -198,6 +204,7 @@ translations/pt-BR/content/github/writing-on-github/working-with-advanced-format
|
||||
translations/pt-BR/content/github/writing-on-github/working-with-advanced-formatting/organizing-information-with-collapsed-sections.md,rendering error
|
||||
translations/pt-BR/content/graphql/guides/index.md,rendering error
|
||||
translations/pt-BR/content/graphql/guides/migrating-graphql-global-node-ids.md,rendering error
|
||||
translations/pt-BR/content/issues/guides.md,rendering error
|
||||
translations/pt-BR/content/issues/trying-out-the-new-projects-experience/customizing-your-project-views.md,rendering error
|
||||
translations/pt-BR/content/issues/trying-out-the-new-projects-experience/managing-access-to-projects.md,rendering error
|
||||
translations/pt-BR/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md,Listed in localization-support#489
|
||||
@@ -267,6 +274,7 @@ translations/pt-BR/content/search-github/searching-on-github/searching-commits.m
|
||||
translations/pt-BR/content/search-github/searching-on-github/searching-discussions.md,rendering error
|
||||
translations/pt-BR/content/search-github/searching-on-github/searching-for-repositories.md,rendering error
|
||||
translations/pt-BR/content/search-github/searching-on-github/searching-issues-and-pull-requests.md,rendering error
|
||||
translations/pt-BR/content/sponsors/guides.md,rendering error
|
||||
translations/pt-BR/data/release-notes/enterprise-server/2-20/15.yml,Listed in localization-support#489
|
||||
translations/pt-BR/data/release-notes/enterprise-server/2-21/6.yml,Listed in localization-support#489
|
||||
translations/pt-BR/data/reusables/apps/deprecating_auth_with_query_parameters.md,Listed in localization-support#489
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Aprovando e mantendo ações
|
||||
shortTitle: Aprovando e mantendo ações
|
||||
intro: Você pode aproveitar a automação e as práticas recomendadas de código aberto para lançar e manter ações.
|
||||
title: Releasing and maintaining actions
|
||||
shortTitle: Releasing and maintaining actions
|
||||
intro: You can leverage automation and open source best practices to release and maintain actions.
|
||||
type: tutorial
|
||||
topics:
|
||||
- Action development
|
||||
@@ -9,6 +9,7 @@ topics:
|
||||
- Community
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghec: '*'
|
||||
ghes: '*'
|
||||
ghae: '*'
|
||||
---
|
||||
@@ -16,79 +17,79 @@ versions:
|
||||
{% data reusables.actions.enterprise-beta %}
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
|
||||
## Introdução
|
||||
## Introduction
|
||||
|
||||
Depois de criar uma ação, você irá continuar lançando novas funcionalidades enquanto trabalha com contribuições da comunidade. Este tutorial descreve um exemplo de processo que você pode seguir para lançar e manter as ações em código aberto. O exemplo:
|
||||
After you create an action, you'll want to continue releasing new features while working with community contributions. This tutorial describes an example process you can follow to release and maintain actions in open source. The example:
|
||||
|
||||
* Aproveita {% data variables.product.prodname_actions %} para integração contínua, atualizações de dependência, gerenciamento de versões e automação de tarefas.
|
||||
* Fornece confiança por meio de testes automatizados e cria selos.
|
||||
* Indica como a ação pode ser usada, de preferência como parte de um fluxo de trabalho mais amplo.
|
||||
* Sinaliza que tipo de contribuições da comunidade você recebe. (Por exemplo, problemas, pull requests ou relatórios de vulnerabilidade.)
|
||||
* Leverages {% data variables.product.prodname_actions %} for continuous integration, dependency updates, release management, and task automation.
|
||||
* Provides confidence through automated tests and build badges.
|
||||
* Indicates how the action can be used, ideally as part of a broader workflow.
|
||||
* Signal what type of community contributions you welcome. (For example, issues, pull requests, or vulnerability reports.)
|
||||
|
||||
Para um exemplo aplicado deste processo, consulte [github-developer/javascript-action](https://github.com/github-developer/javascript-action).
|
||||
For an applied example of this process, see [github-developer/javascript-action](https://github.com/github-developer/javascript-action).
|
||||
|
||||
## Desenvolver e lançar ações
|
||||
## Developing and releasing actions
|
||||
|
||||
Nesta seção, discutimos um processo exemplo para desenvolver e lançar ações e mostrar como usar {% data variables.product.prodname_actions %} para automatizar o processo.
|
||||
In this section, we discuss an example process for developing and releasing actions and show how to use {% data variables.product.prodname_actions %} to automate the process.
|
||||
|
||||
### Sobre ações do JavaScript
|
||||
### About JavaScript actions
|
||||
|
||||
As ações do JavaScript são repositórios do Node.js com metadados. No entanto, as ações do JavaScript têm propriedades adicionais comparadas aos projetos tradicionais do Node.js:
|
||||
JavaScript actions are Node.js repositories with metadata. However, JavaScript actions have additional properties compared to traditional Node.js projects:
|
||||
|
||||
* Os pacotes dependentes recebem commit ao lado do código, normalmente em uma forma compilada e minificada. Isto significa que as criações automatizadas e as contribuições seguras da comunidade são importantes.
|
||||
* Dependent packages are committed alongside the code, typically in a compiled and minified form. This means that automated builds and secure community contributions are important.
|
||||
|
||||
{% ifversion fpt %}
|
||||
{% ifversion fpt or ghec %}
|
||||
|
||||
* As versões marcadas podem ser publicadas diretamente em {% data variables.product.prodname_marketplace %} e consumidas pelos fluxos de trabalho em {% data variables.product.prodname_dotcom %}.
|
||||
* Tagged releases can be published directly to {% data variables.product.prodname_marketplace %} and consumed by workflows across {% data variables.product.prodname_dotcom %}.
|
||||
|
||||
{% endif %}
|
||||
|
||||
* Muitas ações fazem uso de APIs de {% data variables.product.prodname_dotcom %} e de terceiros, por isso incentivamos testes robustos de ponta a ponta.
|
||||
* Many actions make use of {% data variables.product.prodname_dotcom %}'s APIs and third party APIs, so we encourage robust end-to-end testing.
|
||||
|
||||
### Configurando fluxos de trabalho de {% data variables.product.prodname_actions %}
|
||||
### Setting up {% data variables.product.prodname_actions %} workflows
|
||||
|
||||
Para apoiar o processo de desenvolvedor na próxima seção, adicione dois fluxos de trabalho de {% data variables.product.prodname_actions %} ao seu repositório:
|
||||
To support the developer process in the next section, add two {% data variables.product.prodname_actions %} workflows to your repository:
|
||||
|
||||
1. Adicione um fluxo de trabalho que é acionado quando um commit é enviado por push para um branch de recurso ou para o `principal` ou quando um pull request é criado. Configure o fluxo de trabalho para executar seus testes de unidade e integração. Por exemplo, consulte [este fluxo de trabalho](https://github.com/github-developer/javascript-action/blob/963a3b9a9c662fd499419a240ed8c49411ff5add/.github/workflows/test.yml).
|
||||
2. Adicione um fluxo de trabalho que é acionado quando uma versão é publicada ou editada. Configure o fluxo de trabalho para garantir que as tags semânticas estejam prontas. Você pode usar uma ação como [JasonEtco/build-and-tag-action](https://github.com/JasonEtco/build-and-tag-action) para compilar e empacotar o arquivo de metadados e o JavaScript e fazer push forçado semântico maior, menor e tags de patch. Por exemplo, consulte [este fluxo de trabalho](https://github.com/github-developer/javascript-action/blob/963a3b9a9c662fd499419a240ed8c49411ff5add/.github/workflows/publish.yml). Para obter mais informações sobre tags semânticas, consulte "[Sobre versão semântica](https://docs.npmjs.com/about-semantic-versioning)".
|
||||
1. Add a workflow that triggers when a commit is pushed to a feature branch or to `main` or when a pull request is created. Configure the workflow to run your unit and integration tests. For an example, see [this workflow](https://github.com/github-developer/javascript-action/blob/963a3b9a9c662fd499419a240ed8c49411ff5add/.github/workflows/test.yml).
|
||||
2. Add a workflow that triggers when a release is published or edited. Configure the workflow to ensure semantic tags are in place. You can use an action like [JasonEtco/build-and-tag-action](https://github.com/JasonEtco/build-and-tag-action) to compile and bundle the JavaScript and metadata file and force push semantic major, minor, and patch tags. For an example, see [this workflow](https://github.com/github-developer/javascript-action/blob/963a3b9a9c662fd499419a240ed8c49411ff5add/.github/workflows/publish.yml). For more information about semantic tags, see "[About semantic versioning](https://docs.npmjs.com/about-semantic-versioning)."
|
||||
|
||||
### Exemplo do processo de desenvolvedor
|
||||
### Example developer process
|
||||
|
||||
Aqui está um exemplo de processo que você pode seguir para executar os testes automaticamente, crie uma versão{% ifversion fpt%} e publique em {% data variables.product.prodname_marketplace %}{% endif %} e publique sua ação.
|
||||
Here is an example process that you can follow to automatically run tests, create a release{% ifversion fpt or ghec%} and publish to {% data variables.product.prodname_marketplace %}{% endif %}, and publish your action.
|
||||
|
||||
1. Faça o trabalho de recurso nos branches por fluxo do GitHub. Para obter mais informações, consulte "[fluxo do GitHub](/get-started/quickstart/github-flow)".
|
||||
* Sempre que um commit é enviado por push para o branch de recurso, seu fluxo de trabalho de teste irá executar os testes automaticamente.
|
||||
1. Do feature work in branches per GitHub flow. For more information, see "[GitHub flow](/get-started/quickstart/github-flow)."
|
||||
* Whenever a commit is pushed to the feature branch, your testing workflow will automatically run the tests.
|
||||
|
||||
2. Crie pull requests para o branch `principal` para iniciar a discussão e revisão, fazendo merge quando estiver pronto.
|
||||
2. Create pull requests to the `main` branch to initiate discussion and review, merging when ready.
|
||||
|
||||
* Quando um pull request é aberto, seja em um branch ou bifurcação, seu fluxo de trabalho de testes executará novamente os testes, desta vez com o commit do merge.
|
||||
* When a pull request is opened, either from a branch or a fork, your testing workflow will again run the tests, this time with the merge commit.
|
||||
|
||||
* **Observação:** por razões de segurança, fluxos de trabalho acionados por `pull_request` apartir das bifurcações restringiram as permissões de `GITHUB_TOKEN` e não têm acesso a segredos. Se seus testes ou outros fluxos de trabalho acionados após o pull request solicitar acesso a segredos, considere o uso de um evento diferente como um manual [disparar](/actions/reference/events-that-trigger-workflows#manual-events) ou um [`pull_request_target`](/actions/reference/events-that-trigger-workflows#pull_request_target). Leia mais [aqui](/actions/reference/events-that-trigger-workflows#pull-request-events-for-forked-repositories).
|
||||
* **Note:** for security reasons, workflows triggered by `pull_request` from forks have restricted `GITHUB_TOKEN` permissions and do not have access to secrets. If your tests or other workflows triggered upon pull request require access to secrets, consider using a different event like a [manual trigger](/actions/reference/events-that-trigger-workflows#manual-events) or a [`pull_request_target`](/actions/reference/events-that-trigger-workflows#pull_request_target). Read more [here](/actions/reference/events-that-trigger-workflows#pull-request-events-for-forked-repositories).
|
||||
|
||||
3. Crie uma versão semântica marcada. {% ifversion fpt %} Você também pode publicar em {% data variables.product.prodname_marketplace %} com uma caixa de seleção simples. {% endif %} Para mais informações, consulte "[Gerenciando versões em um repositório](/github/administering-a-repository/managing-releases-in-a-repository#creating-a-release)"{% ifversion fpt %} e "[Publicando ações em {% data variables.product.prodname_marketplace %}](/actions/creating-actions/publishing-actions-in-github-marketplace#publishing-an-action)"{% endif %}.
|
||||
3. Create a semantically tagged release. {% ifversion fpt or ghec %} You may also publish to {% data variables.product.prodname_marketplace %} with a simple checkbox. {% endif %} For more information, see "[Managing releases in a repository](/github/administering-a-repository/managing-releases-in-a-repository#creating-a-release)"{% ifversion fpt or ghec %} and "[Publishing actions in {% data variables.product.prodname_marketplace %}](/actions/creating-actions/publishing-actions-in-github-marketplace#publishing-an-action)"{% endif %}.
|
||||
|
||||
* Quando uma versão é publicada ou editada, seu fluxo de trabalho de versão cuidará automaticamente da compilação e ajuste das tags.
|
||||
* When a release is published or edited, your release workflow will automatically take care of compilation and adjusting tags.
|
||||
|
||||
* Recomendamos criar versões usando tags com versão semântica – por exemplo, `v1.1.3` – e mantendo tags maiores (`v1`) e menores (`v1.`) atuais para o último commit apropriado. Para obter mais informações, consulte "[Sobre ações personalizadas](/actions/creating-actions/about-custom-actions#using-release-management-for-actions)" e "[Sobre a versão semântica](https://docs.npmjs.com/about-semantic-versioning).
|
||||
* We recommend creating releases using semantically versioned tags – for example, `v1.1.3` – and keeping major (`v1`) and minor (`v1.1`) tags current to the latest appropriate commit. For more information, see "[About custom actions](/actions/creating-actions/about-custom-actions#using-release-management-for-actions)" and "[About semantic versioning](https://docs.npmjs.com/about-semantic-versioning).
|
||||
|
||||
### Resultados
|
||||
### Results
|
||||
|
||||
Diferentemente de outras estratégias automatizadas de gerenciamento de versão, este processo não faz, de modo intencional, commit de dependências para o branch `principal`, apenas para os commits de versão com tag. Ao fazer isso, você incentiva os usuários da sua ação a fazerem referência a tags nomeadas ou `sha`s, além de ajudar a garantir a segurança de pull requests de terceiros, fazendo a compilação você mesmo durante uma versão.
|
||||
Unlike some other automated release management strategies, this process intentionally does not commit dependencies to the `main` branch, only to the tagged release commits. By doing so, you encourage users of your action to reference named tags or `sha`s, and you help ensure the security of third party pull requests by doing the build yourself during a release.
|
||||
|
||||
Usar versões semânticas significa que os usuários das suas ações podem fixar os seus fluxos de trabalho a uma versão e saber que podem continuar recebendo a última estabilidade recursos não relevantes, dependendo de seu nível de conforto:
|
||||
Using semantic releases means that the users of your actions can pin their workflows to a version and know that they might continue to receive the latest stable, non-breaking features, depending on their comfort level:
|
||||
|
||||
## Trabalhando com a comunidade
|
||||
## Working with the community
|
||||
|
||||
{% data variables.product.product_name %} fornece ferramentas e guias para ajudar você a trabalhar com a comunidade de código aberto. Aqui estão algumas ferramentas que recomendamos a criação de uma comunicação bidirecional saudável. Ao fornecer os seguintes sinais à comunidade, você incentiva outras pessoas a usar, modificar e contribuir para sua ação:
|
||||
{% data variables.product.product_name %} provides tools and guides to help you work with the open source community. Here are a few tools we recommend setting up for healthy bidirectional communication. By providing the following signals to the community, you encourage others to use, modify, and contribute to your action:
|
||||
|
||||
* Mantenha um `README` com muitos exemplos de uso e orientação. Para obter mais informações, consulte "[Sobre README](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes)".
|
||||
* Inclua um selo de status de fluxo de trabalho no seu arquivo `README`. Para obter mais informações, consulte "[Adicionando um selo de status do fluxo de trabalho](/actions/managing-workflow-runs/adding-a-workflow-status-badge)". Visite também [shields.io](https://shields.io/) para aprender sobre outros selos que você pode adicionar.{% ifversion fpt %}
|
||||
* Adicione arquivos de saúde da comunidade como `CODE_OF_CONDUCT`, `CONTRIBUTING` e `SEGURANÇA`. Para obter mais informações, consulte "[" Criando um arquivo padrão de saúde da comunidade](/github/building-a-strong-community/creating-a-default-community-health-file#supported-file-types)."{% endif %}
|
||||
* Mantenha os problemas atuais, utilizando as ações como [actions/stale](https://github.com/actions/stale).
|
||||
* Maintain a `README` with plenty of usage examples and guidance. For more information, see "[About READMEs](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes)."
|
||||
* Include a workflow status badge in your `README` file. For more information, see "[Adding a workflow status badge](/actions/managing-workflow-runs/adding-a-workflow-status-badge)." Also visit [shields.io](https://shields.io/) to learn about other badges that you can add.{% ifversion fpt or ghec %}
|
||||
* Add community health files like `CODE_OF_CONDUCT`, `CONTRIBUTING`, and `SECURITY`. For more information, see "[Creating a default community health file](/github/building-a-strong-community/creating-a-default-community-health-file#supported-file-types)."{% endif %}
|
||||
* Keep issues current by utilizing actions like [actions/stale](https://github.com/actions/stale).
|
||||
|
||||
## Leia mais
|
||||
## Further reading
|
||||
|
||||
Os exemplos em que os padrões similares são empregados incluem:
|
||||
Examples where similar patterns are employed include:
|
||||
|
||||
* [github/super-linter](https://github.com/github/super-linter)
|
||||
* [octokit/request-action](https://github.com/octokit/request-action)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Usando ambientes para implantação
|
||||
shortTitle: Usar ambientes para implantação
|
||||
intro: Você pode configurar ambientes com regras de proteção e segredos. Um trabalho de fluxo de trabalho que faz referência a um ambiente deve seguir quaisquer regras de proteção para o ambiente antes de executar ou acessar os segredos do ambiente.
|
||||
title: Using environments for deployment
|
||||
shortTitle: Use environments for deployment
|
||||
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.
|
||||
product: '{% data reusables.gated-features.environments %}'
|
||||
miniTocMaxHeadingLevel: 3
|
||||
redirect_from:
|
||||
@@ -17,56 +17,58 @@ versions:
|
||||
|
||||
{% data reusables.actions.ae-beta %}
|
||||
|
||||
## Sobre ambientes
|
||||
## About environments
|
||||
|
||||
Os ambientes são usados para descrever um alvo geral de implantação como `produção`, `preparo` ou `desenvolvimento`. Quando um fluxo de trabalho de {% data variables.product.prodname_actions %} é implantado em um ambiente, o ambiente é exibido na página principal do repositório. Para obter mais informações sobre a visualização de implantações em ambientes, consulte "[Visualizando histórico de implantação](/developers/overview/viewing-deployment-history)".
|
||||
Environments are used to describe a general deployment target like `production`, `staging`, or `development`. When a {% data variables.product.prodname_actions %} workflow deploys to an environment, the environment is displayed on the main page of the repository. For more information about viewing deployments to environments, see "[Viewing deployment history](/developers/overview/viewing-deployment-history)."
|
||||
|
||||
Você pode configurar ambientes com regras de proteção e segredos. Quando um trabalho de fluxo de trabalho faz referência a um ambiente, o trabalho não será iniciado até que todas as regras de proteção do ambiente sejam aprovadas. Um trabalho também não pode acessar segredos definidos em ambiente até que todas as regras de proteção do ambiente sejam aprovadas.
|
||||
You can configure environments with protection rules and secrets. When a workflow job references an environment, the job won't start until all of the environment's protection rules pass. A job also cannot access secrets that are defined in an environment until all the environment protection rules pass.
|
||||
|
||||
{% ifversion fpt %}
|
||||
{% note %}
|
||||
|
||||
**Observação:** Se você não usar {% data variables.product.prodname_ghe_cloud %} e converter um repositório de público em privado, todas as regras de proteção configuradas ou segredos de ambiente serão ignorados e você não poderá de configurar nenhum ambiente. Se você converter seu repositório de volta para público, você terá acesso a todas as regras de proteção e segredos de ambiente previamente configurados. {% data reusables.enterprise.link-to-ghec-trial %}
|
||||
**Note:** You can only configure environments for public repositories. If you convert a repository from public to private, any configured protection rules or environment secrets will be ignored, and you will not be able to configure any environments. If you convert your repository back to public, you will have access to any previously configured protection rules and environment secrets.
|
||||
|
||||
Organizations that use {% data variables.product.prodname_ghe_cloud %} can configure environments for private repositories. For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/deployment/targeting-different-environments/using-environments-for-deployment). {% data reusables.enterprise.link-to-ghec-trial %}
|
||||
|
||||
{% endnote %}
|
||||
{% endif %}
|
||||
|
||||
## Regras de proteção de ambiente
|
||||
## Environment protection rules
|
||||
|
||||
As normas de proteção do ambiente exigem a aprovação de condições específicas antes que um trabalho que faz referência ao ambiente possa prosseguir. {% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}Você pode usar regras de proteção do ambiente para exigir uma aprovação manual, atrasar um trabalho ou restringir o ambiente a certos branches.{% else %}Você pode usar as regras de proteção de ambiente para exigir uma aprovação manual ou atrasar um trabalho.{% endif %}
|
||||
Environment protection rules require specific conditions to pass before a job referencing the environment can proceed. {% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}You can use environment protection rules to require a manual approval, delay a job, or restrict the environment to certain branches.{% else %}You can use environment protection rules to require a manual approval or delay a job.{% endif %}
|
||||
|
||||
### Revisores necessários
|
||||
### Required reviewers
|
||||
|
||||
Use os revisores necessários para exigir que uma pessoa ou equipe específica aprove os trabalhos do fluxo de trabalho que fazem referência ao ambiente. Você pode listar até seis usuários ou equipes como revisores. Os revisores devem ter, pelo menos, acesso de leitura ao repositório. Apenas um dos revisores precisam aprovar o trabalho para que prossiga.
|
||||
Use required reviewers to require a specific person or team to approve workflow jobs that reference the environment. You can list up to six users or teams as reviewers. The reviewers must have at least read access to the repository. Only one of the required reviewers needs to approve the job for it to proceed.
|
||||
|
||||
Para obter mais informações sobre os trabalhos de revisão que fazem referência a um ambiente com os revisores necessários, consulte "[Revisar implantações](/actions/managing-workflow-runs/reviewing-deployments)".
|
||||
For more information on reviewing jobs that reference an environment with required reviewers, see "[Reviewing deployments](/actions/managing-workflow-runs/reviewing-deployments)."
|
||||
|
||||
### Temporizador de espera
|
||||
### Wait timer
|
||||
|
||||
Use o temporizador de espera para atrasar o trabalho por um período específico de tempo depois que o trabalho for inicialmente acionado. O tempo (em minutos) deve ser um número inteiro entre 0 e 43.200 (30 dias).
|
||||
Use a wait timer to delay a job for a specific amount of time after the job is initially triggered. The time (in minutes) must be an integer between 0 and 43,200 (30 days).
|
||||
|
||||
{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}
|
||||
### Implementar branches
|
||||
### Deployment branches
|
||||
|
||||
Use os branches de implantação para restringir quais branches podem ser implementados no ambiente. Abaixo, estão as opções para branches de implantação para um ambiente:
|
||||
Use deployment branches to restrict which branches can deploy to the environment. Below are the options for deployment branches for an environment:
|
||||
|
||||
* **Todos os branches**: Todos os branches no repositório podem implantar no ambiente.
|
||||
* **Branches protegidos**: Somente branches com regras de proteção de branch habilitadas podem implementar no ambiente. Se nenhuma regra de proteção de branch for definida para qualquer branch no repositório, todos os branches poderão implantar. Para obter mais informações sobre as regras de proteção de branches, consulte "[Sobre branches protegidos](/github/administering-a-repository/about-protected-branches)".
|
||||
* **Branches selecionados**: Somente branches que correspondem a seus padrões de nome especificados podem implantar no ambiente.
|
||||
* **All branches**: All branches in the repository can deploy to the environment.
|
||||
* **Protected branches**: Only branches with branch protection rules enabled can deploy to the environment. If no branch protection rules are defined for any branch in the repository, then all branches can deploy. For more information about branch protection rules, see "[About protected branches](/github/administering-a-repository/about-protected-branches)."
|
||||
* **Selected branches**: Only branches that match your specified name patterns can deploy to the environment.
|
||||
|
||||
Por exemplo, se você especificar `releases/*` como uma regra de implantação de branch, apenas os branches cujo nome começa com `releases/` poderão fazer a implantação no ambiente. (Caracteres curinga não correspondem a `/`. Para corresponder aos branches que começam com `release/` e contêm uma única barra adicional, use `release/*/*`.) Se você adicionar `main` como uma regra de branch de implantação, um branch denominado `main` também poderá ser implantado no ambiente. Para obter mais informações sobre opções de sintaxe para branches de implantação, consulte a [Documentação File.fnmatch do Ruby](https://ruby-doc.org/core-2.5.1/File.html#method-c-fnmatch).
|
||||
For example, if you specify `releases/*` as a deployment branch rule, only branches whose name begins with `releases/` can deploy to the environment. (Wildcard characters will not match `/`. To match branches that begin with `release/` and contain an additional single slash, use `release/*/*`.) If you add `main` as a deployment branch rule, a branch named `main` can also deploy to the environment. For more information about syntax options for deployment branches, see the [Ruby File.fnmatch documentation](https://ruby-doc.org/core-2.5.1/File.html#method-c-fnmatch).
|
||||
{% endif %}
|
||||
## Segredos de ambiente
|
||||
## Environment secrets
|
||||
|
||||
Os segredos armazenados em um ambiente só estão disponíveis para trabalhos de fluxo de trabalho que fazem referência ao ambiente. Se o ambiente exigir aprovação, um trabalho não poderá acessar segredos de ambiente até que um dos revisores necessários o aprove. Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/reference/encrypted-secrets)".
|
||||
Secrets stored in an environment are only available to workflow jobs that reference the environment. If the environment requires approval, a job cannot access environment secrets until one of the required reviewers approves it. For more information about secrets, see "[Encrypted secrets](/actions/reference/encrypted-secrets)."
|
||||
|
||||
{% note %}
|
||||
|
||||
**Observação:** Os fluxos de trabalho executados em executores auto-hospedados não são executados em um contêiner isolado, mesmo que usem ambientes. Os segredos de ambiente devem ser tratados com o mesmo nível de segurança que os segredos do repositório e da organização. Para obter mais informações, consulte "[Enrijecimento de segurança para o GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#hardening-for-self-hosted-runners)".
|
||||
**Note:** Workflows that run on self-hosted runners are not run in an isolated container, even if they use environments. Environment secrets should be treated with the same level of security as repository and organization secrets. For more information, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#hardening-for-self-hosted-runners)."
|
||||
|
||||
{% endnote %}
|
||||
|
||||
## Criar um ambiente
|
||||
## Creating an environment
|
||||
|
||||
{% data reusables.github-actions.permissions-statement-environment %}
|
||||
|
||||
@@ -75,55 +77,55 @@ Os segredos armazenados em um ambiente só estão disponíveis para trabalhos de
|
||||
{% data reusables.github-actions.sidebar-environment %}
|
||||
{% data reusables.github-actions.new-environment %}
|
||||
{% data reusables.github-actions.name-environment %}
|
||||
1. Opcionalmente, especifique as pessoas ou equipes que devem aprovar os trabalhos do fluxo de trabalho que usam esse ambiente.
|
||||
1. Selecione **Revisores necessários**.
|
||||
1. Insira até até 6 pessoas ou equipes. Apenas um dos revisores precisam aprovar o trabalho para que prossiga.
|
||||
1. Clique **Regras de proteção do salvamento**.
|
||||
2. Opcionalmente, especifique o tempo a esperar antes de permitir que os trabalhos do fluxo de trabalho que usam esse ambiente prossigam.
|
||||
1. Selecione **Temporizador de espera**.
|
||||
1. Insira o número de minutos para esperar.
|
||||
1. Clique **Regras de proteção do salvamento**.
|
||||
3. Opcionalmente, especifique quais branches podem implantar neste ambiente. Para obter mais informações sobre os valores possíveis, consulte "[Ramificações de implantação](#deployment-branches)".
|
||||
1. Selecione a opção desejada no menu suspenso dos **Branches de implantação**.
|
||||
1. Se escolheu **Branches selecionados**, digite os padrões de nome do branch que você deseja permitir.
|
||||
4. Opcionalmente, adicione segredos de ambiente. Esses segredos só estão disponíveis para trabalhos de fluxo de trabalho que usam o ambiente. Além disso, os trabalhos do fluxo de trabalho que usam este ambiente só podem acessar esses segredos após todas as regras configuradas (por exemplo, revisores obrigatórios). Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/reference/encrypted-secrets)".
|
||||
1. Em **Segredos do ambiente**, clique em **Adicionar segredo**.
|
||||
1. Insira o nome do segredo.
|
||||
1. Insira o valor do segredo.
|
||||
1. Clique em **Add secret** (Adicionar segredo).
|
||||
1. Optionally, specify people or teams that must approve workflow jobs that use this environment.
|
||||
1. Select **Required reviewers**.
|
||||
1. Enter up to 6 people or teams. Only one of the required reviewers needs to approve the job for it to proceed.
|
||||
1. Click **Save protection rules**.
|
||||
2. Optionally, specify the amount of time to wait before allowing workflow jobs that use this environment to proceed.
|
||||
1. Select **Wait timer**.
|
||||
1. Enter the number of minutes to wait.
|
||||
1. Click **Save protection rules**.
|
||||
3. Optionally, specify what branches can deploy to this environment. For more information about the possible values, see "[Deployment branches](#deployment-branches)."
|
||||
1. Select the desired option in the **Deployment branches** dropdown.
|
||||
1. If you chose **Selected branches**, enter the branch name patterns that you want to allow.
|
||||
4. Optionally, add environment secrets. These secrets are only available to workflow jobs that use the environment. Additionally, workflow jobs that use this environment can only access these secrets after any configured rules (for example, required reviewers) pass. For more information about secrets, see "[Encrypted secrets](/actions/reference/encrypted-secrets)."
|
||||
1. Under **Environment secrets**, click **Add Secret**.
|
||||
1. Enter the secret name.
|
||||
1. Enter the secret value.
|
||||
1. Click **Add secret**.
|
||||
|
||||
{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}Você também pode criar e configurar ambientes por meio da API REST. Para obter mais informações, consulte "[Ambientes](/rest/reference/repos#environments)" e "[Segredos](/rest/reference/actions#secrets)."{% endif %}
|
||||
{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}You can also create and configure environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)" and "[Secrets](/rest/reference/actions#secrets)."{% endif %}
|
||||
|
||||
Executar um fluxo de trabalho que faz referência a um ambiente que não existe criará um ambiente com o nome referenciado. O novo ambiente não terá nenhuma regra de proteção ou segredos configurados. Qualquer pessoa que possa editar fluxos de trabalho no repositório pode criar ambientes por meio de um arquivo de fluxo de trabalho, mas apenas os administradores do repositório podem configurar o ambiente.
|
||||
Running a workflow that references an environment that does not exist will create an environment with the referenced name. The newly created environment will not have any protection rules or secrets configured. Anyone that can edit workflows in the repository can create environments via a workflow file, but only repository admins can configure the environment.
|
||||
|
||||
## Usando um ambiente
|
||||
## Using an environment
|
||||
|
||||
Cada trabalho em um fluxo de trabalho pode fazer referência a um único ambiente. Todas as regras de proteção configuradas para o ambiente têm de ser aprovadas antes que um trabalho de referência ao ambiente seja enviado a um executor. O trabalho só pode acessar os segredos do ambiente depois que for enviado para um executor.
|
||||
Each job in a workflow can reference a single environment. Any protection rules configured for the environment must pass before a job referencing the environment is sent to a runner. The job can access the environment's secrets only after the job is sent to a runner.
|
||||
|
||||
Quando um fluxo de trabalho faz referência a um ambiente, o ambiente aparecerá nas implantações do repositório. Para obter mais informações sobre a visualização de implementações atuais e anteriores, consulte "[Visualizar histórico de implantação](/developers/overview/viewing-deployment-history)".
|
||||
When a workflow references an environment, the environment will appear in the repository's deployments. For more information about viewing current and previous deployments, see "[Viewing deployment history](/developers/overview/viewing-deployment-history)."
|
||||
|
||||
{% data reusables.actions.environment-example %}
|
||||
|
||||
## Excluir um ambiente
|
||||
## Deleting an environment
|
||||
|
||||
{% data reusables.github-actions.permissions-statement-environment %}
|
||||
|
||||
A exclusão de um ambiente apagará todos os segredos e regras de proteção associados ao ambiente. Todos os trabalhos que estejam atualmente em espera devido às regras de proteção do ambiente eliminado falharão automaticamente.
|
||||
Deleting an environment will delete all secrets and protection rules associated with the environment. Any jobs currently waiting because of protection rules from the deleted environment will automatically fail.
|
||||
|
||||
{% data reusables.repositories.navigate-to-repo %}
|
||||
{% data reusables.repositories.sidebar-settings %}
|
||||
{% data reusables.github-actions.sidebar-environment %}
|
||||
1. Ao lado do ambiente que você deseja excluir, clique em {% octicon "trash" aria-label="The trash icon" %}.
|
||||
2. Clique em **Eu entendi, exclua este ambiente**.
|
||||
1. Next to the environment that you want to delete, click {% octicon "trash" aria-label="The trash icon" %}.
|
||||
2. Click **I understand, delete this environment**.
|
||||
|
||||
{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}Você também pode excluir ambientes por meio da API REST. Para obter mais informações, consulte "[Ambientes](/rest/reference/repos#environments)."{% endif %}
|
||||
{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}You can also delete environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)."{% endif %}
|
||||
|
||||
## Como os ambientes relacionam-se com as implantações
|
||||
## How environments relate to deployments
|
||||
|
||||
{% data reusables.actions.environment-deployment-event %}
|
||||
|
||||
Você pode acessar esses objetos por meio da API REST ou API do GraphQL. Você também pode assinar esses eventos de webhook. Para obter mais informações, consulte "[Repositórios](/rest/reference/repos#deployments)" (API REST), "[Objetos]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/objects#deployment)" (GraphQL API) ou "[Eventos de webhook e cargas](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#deployment)".
|
||||
You can access these objects through the REST API or GraphQL API. You can also subscribe to these webhook events. For more information, see "[Repositories](/rest/reference/repos#deployments)" (REST API), "[Objects]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/objects#deployment)" (GraphQL API), or "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#deployment)."
|
||||
|
||||
## Próximas etapas
|
||||
## Next steps
|
||||
|
||||
{% data variables.product.prodname_actions %} fornece várias funcionalidades para gerenciar suas implantações. Para obter mais informações, consulte "[Implantando com o GitHub Actions](/actions/deployment/deploying-with-github-actions)".
|
||||
{% data variables.product.prodname_actions %} provides several features for managing your deployments. For more information, see "[Deploying with GitHub Actions](/actions/deployment/deploying-with-github-actions)."
|
||||
|
||||
@@ -65,3 +65,4 @@ includeGuides:
|
||||
- /code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/automating-dependabot-with-github-actions
|
||||
- /code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/keeping-your-actions-up-to-date-with-dependabot
|
||||
---
|
||||
|
||||
|
||||
@@ -81,11 +81,13 @@ You can add self-hosted runners at the organization level, where they can be use
|
||||
|
||||
## Adding a self-hosted runner to an enterprise
|
||||
|
||||
You can add self-hosted runners to an enterprise, where they can be assigned to multiple organizations. The organization admins are then able to control which repositories can use it.
|
||||
{% 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 fpt or ghec %}
|
||||
{% ifversion ghec %}
|
||||
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 Administration GitHub Actions APIs](/rest/reference/enterprise-admin#github-actions).
|
||||
|
||||
{% data reusables.enterprise-accounts.access-enterprise %}
|
||||
@@ -104,9 +106,11 @@ To add a self-hosted runner at the enterprise level of {% data variables.product
|
||||
1. Click **Add new**, then click **New runner**.
|
||||
{% data reusables.github-actions.self-hosted-runner-configure %}
|
||||
{% endif %}
|
||||
{% ifversion ghec or ghae or ghes %}
|
||||
{% data reusables.github-actions.self-hosted-runner-check-installation-success %}
|
||||
|
||||
{% data reusables.github-actions.self-hosted-runner-public-repo-access %}
|
||||
{% endif %}
|
||||
|
||||
### Making enterprise runners available to repositories
|
||||
|
||||
@@ -115,3 +119,4 @@ By default, runners in an enterprise's "Default" self-hosted runner group are av
|
||||
To make an enterprise-level self-hosted runner group available to an organization repository, you might need to change the organization's inherited settings for the runner group to make the runner available to repositories in the organization.
|
||||
|
||||
For more information on changing runner group access settings, see "[Managing access to self-hosted runners using groups](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."
|
||||
{% endif %}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Gerenciando o acesso aos executores auto-hospedados usando grupos
|
||||
intro: Você pode usar políticas para limitar o acesso a executores auto-hospedados adicionados a uma organização ou empresa.
|
||||
title: Managing access to self-hosted runners using groups
|
||||
intro: You can use policies to limit access to self-hosted runners that have been added to an organization or enterprise.
|
||||
redirect_from:
|
||||
- /actions/hosting-your-own-runners/managing-access-to-self-hosted-runners
|
||||
versions:
|
||||
@@ -9,7 +9,7 @@ versions:
|
||||
ghae: '*'
|
||||
ghec: '*'
|
||||
type: tutorial
|
||||
shortTitle: Gerenciar grupos de executores
|
||||
shortTitle: Manage runner groups
|
||||
---
|
||||
|
||||
{% data reusables.actions.ae-self-hosted-runners-notice %}
|
||||
@@ -17,42 +17,47 @@ shortTitle: Gerenciar grupos de executores
|
||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||
{% data reusables.actions.ae-beta %}
|
||||
|
||||
## Sobre grupos de executores auto-hospedados
|
||||
## About self-hosted runner groups
|
||||
|
||||
{% ifversion fpt or ghec %}
|
||||
{% ifversion fpt %}
|
||||
{% note %}
|
||||
|
||||
**Observação:** Todas as organizações têm um único grupo de executores auto-hospedados padrão. Somente contas corporativas e organizações pertencentes a contas corporativas podem criar e gerenciar grupos de executores auto-hospedados adicionais.
|
||||
**Note:** All organizations have a single default self-hosted runner group. Only enterprise accounts and organizations owned by enterprise accounts can create and manage additional self-hosted runner groups.
|
||||
|
||||
{% endnote %}
|
||||
|
||||
Self-hosted runner groups are used to control access to self-hosted runners. Organization admins can configure access policies that control which repositories in an organization have access to the runner group.
|
||||
|
||||
If you use {% data variables.product.prodname_ghe_cloud %}, you can create additional runner groups; enterprise admins can configure access policies that control which organizations in an enterprise have access to the runner group; and organization admins can assign additional granular repository access policies to the enterprise runner group. For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups).
|
||||
{% endif %}
|
||||
|
||||
Grupos de executores auto-hospedados são usados para controlar o acesso a executores auto-hospedados a nível da organização e da empresa. Os administradores da empresa podem configurar políticas de acesso que controlam quais organizações em uma empresa têm acesso ao grupo de runner. Os administradores da organização podem configurar políticas de acesso que controlam quais repositórios em uma organização têm acesso ao grupo de runner.
|
||||
{% ifversion ghec or ghes or ghae %}
|
||||
Self-hosted runner groups are used to control access to self-hosted runners at the organization and enterprise level. Enterprise admins can configure access policies that control which organizations in an enterprise have access to the runner group. Organization admins can configure access policies that control which repositories in an organization have access to the runner group.
|
||||
|
||||
Quando um administrador da empresa concede acesso de uma organização a um grupo de runner, os administradores da organização podem ver o grupo de runner listado nas configurações do runner auto-hospedado da organização. Os administradores de organizações podem então atribuir políticas adicionais de acesso ao repositório granular para o grupo de executores empresariais.
|
||||
When an enterprise admin grants an organization access to a runner group, organization admins can see the runner group listed in the organization's self-hosted runner settings. The organizations admins can then assign additional granular repository access policies to the enterprise runner group.
|
||||
|
||||
Quando novos executores são criados, eles são atribuídos automaticamente ao grupo-padrão. Os executores só podem estar em um grupo por vez. Você pode mover os executores do grupo-padrão para outro grupo. Para obter mais informações, consulte "[Mover um executorauto-hospedado para um grupo](#moving-a-self-hosted-runner-to-a-group)".
|
||||
When new runners are created, they are automatically assigned to the default group. Runners can only be in one group at a time. You can move runners from the default group to another group. For more information, see "[Moving a self-hosted runner to a group](#moving-a-self-hosted-runner-to-a-group)."
|
||||
|
||||
## Criar um grupo de executor auto-hospedado para uma organização
|
||||
## Creating a self-hosted runner group for an organization
|
||||
|
||||
Todas as organizações têm um único grupo de executores auto-hospedados padrão. As organizações dentro de uma conta corporativa podem criar outros grupos auto-hospedados. Os administradores da organização podem permitir o acesso de repositórios individuais a um grupo de executor. Para obter informações sobre como criar um grupo de executores auto-hospedados com a API REST, consulte "[grupos de executores auto-hospedados](/rest/reference/actions#self-hosted-runner-groups)."
|
||||
All organizations have a single default self-hosted runner group. Organizations within an enterprise account can create additional self-hosted groups. Organization admins can allow individual repositories access to a runner group. For information about how to create a self-hosted runner group with the REST API, see "[Self-hosted runner groups](/rest/reference/actions#self-hosted-runner-groups)."
|
||||
|
||||
Os executores auto-hospedados são automaticamente atribuídos ao grupo-padrão quando criados e só podem ser membros de um grupo por vez. Você pode mover um executor do grupo- padrão para qualquer grupo que você criar.
|
||||
Self-hosted runners are automatically assigned to the default group when created, and can only be members of one group at a time. You can move a runner from the default group to any group you create.
|
||||
|
||||
Ao criar um grupo, você deverá escolher uma política que defina quais repositórios têm acesso ao grupo do executor.
|
||||
When creating a group, you must choose a policy that defines which repositories have access to the runner group.
|
||||
|
||||
{% ifversion fpt or ghec %}
|
||||
{% ifversion ghec %}
|
||||
{% data reusables.organizations.navigate-to-org %}
|
||||
{% data reusables.organizations.org_settings %}
|
||||
{% data reusables.github-actions.settings-sidebar-actions-runner-groups %}
|
||||
1. Na seção "Grupos de executores", clique em **Novo grupo de executor**.
|
||||
1. In the "Runner groups" section, click **New runner group**.
|
||||
{% data reusables.github-actions.runner-group-assign-policy-repo %}
|
||||
|
||||
{% warning %}
|
||||
|
||||
**Aviso**: {% indented_data_reference reusables.github-actions.self-hosted-runner-security spaces=3 %}
|
||||
**Warning**: {% indented_data_reference reusables.github-actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
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.github-actions.self-hosted-runner-create-group %}
|
||||
@@ -61,50 +66,50 @@ Ao criar um grupo, você deverá escolher uma política que defina quais reposit
|
||||
{% data reusables.organizations.navigate-to-org %}
|
||||
{% data reusables.organizations.org_settings %}
|
||||
{% data reusables.github-actions.settings-sidebar-actions-runners %}
|
||||
1. Na seção "Executores auto-hospedados", clique em **Adicionar novo** e, em seguida, **Novo grupo**.
|
||||
1. In the "Self-hosted runners" section, click **Add new**, and then **New group**.
|
||||
|
||||

|
||||
1. Insira um nome para o seu grupo de executor e atribua uma política para acesso ao repositório.
|
||||

|
||||
1. Enter a name for your runner group, and assign a policy for repository access.
|
||||
|
||||
{% ifversion ghes or ghae %} Você pode configurar um grupo de executores para poder ser acessado por uma lista específica de repositórios ou por todos os repositórios na organização. Por padrão, apenas repositórios privados podem acessar executores em um grupo de executores, mas você pode substituir isso. Esta configuração não pode ser substituída se configurar o grupo de executores da organização que foi compartilhado por uma empresa.{% endif %}
|
||||
{% 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 %}
|
||||
|
||||
{% warning %}
|
||||
|
||||
**Aviso**
|
||||
**Warning**
|
||||
|
||||
{% indented_data_reference reusables.github-actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
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 %}
|
||||
|
||||

|
||||
1. Clique em **Salvar grupo** para criar o grupo e aplicar a política.
|
||||

|
||||
1. Click **Save group** to create the group and apply the policy.
|
||||
{% endif %}
|
||||
|
||||
## Criar um grupo de executor auto-hospedado para uma empresa
|
||||
## Creating a self-hosted runner group for an enterprise
|
||||
|
||||
As empresas podem adicionar seus executores auto-hospedados a grupos para gerenciamento de acesso. As empresas podem criar grupos de executores auto-hospedados acessíveis a organizações específicas na conta corporativa. Os administradores da organização podem atribuir políticas adicionais granulares de acesso ao repositório para os grupos de executores corporativos. Para obter informações sobre como criar um grupo de executores auto-hospedados com a API REST, consulte as [APIs da administração da empresa do GitHub Actions](/rest/reference/enterprise-admin#github-actions).
|
||||
Enterprises can add their self-hosted runners to groups for access management. Enterprises can create groups of self-hosted runners that are accessible to specific organizations in the enterprise account. Organization admins can then assign additional granular repository access policies to the enterprise runner groups. For information about how to create a self-hosted runner group with the REST API, see the [Enterprise Administration GitHub Actions APIs](/rest/reference/enterprise-admin#github-actions).
|
||||
|
||||
Os executores auto-hospedados são automaticamente atribuídos ao grupo-padrão quando criados e só podem ser membros de um grupo por vez. Você pode atribuir o executor a um grupo específico durante o processo de registro, ou você pode mover o executor do grupo-padrão para um grupo personalizado.
|
||||
Self-hosted runners are automatically assigned to the default group when created, and can only be members of one group at a time. You can assign the runner to a specific group during the registration process, or you can later move the runner from the default group to a custom group.
|
||||
|
||||
Ao criar um grupo, você deve escolher uma política que defina quais organizações têm acesso ao grupo de executores.
|
||||
When creating a group, you must choose a policy that defines which organizations have access to the runner group.
|
||||
|
||||
{% ifversion fpt or ghec %}
|
||||
{% ifversion ghec %}
|
||||
{% 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. Clique em **Novo grupo de executores**.
|
||||
1. Click **New runner group**.
|
||||
{% data reusables.github-actions.runner-group-assign-policy-org %}
|
||||
|
||||
{% warning %}
|
||||
|
||||
**Aviso**
|
||||
**Warning**
|
||||
|
||||
{% indented_data_reference reusables.github-actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
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.github-actions.self-hosted-runner-create-group %}
|
||||
@@ -114,88 +119,99 @@ Ao criar um grupo, você deve escolher uma política que defina quais organizaç
|
||||
{% data reusables.enterprise-accounts.policies-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-tab %}
|
||||
{% data reusables.enterprise-accounts.actions-runners-tab %}
|
||||
1. Clique em **Adicionar novo** e, em seguida, **Novo grupo**.
|
||||
1. Click **Add new**, and then **New group**.
|
||||
|
||||

|
||||
1. Insira um nome para o seu grupo de executor e atribua uma política para acesso à organização.
|
||||

|
||||
1. Enter a name for your runner group, and assign a policy for organization access.
|
||||
|
||||
Você pode configurar um grupo de executores para que possa ser acessado por uma lista específica de organizações ou por todas as organizações da empresa. Por padrão, apenas repositórios privados podem acessar executores em um grupo de executores, mas você pode substituir isso. This setting can't be overridden if configuring an organization's runner group that was shared by an enterprise.
|
||||
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 %}
|
||||
|
||||
**Aviso**
|
||||
**Warning**
|
||||
|
||||
{% indented_data_reference reusables.github-actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
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 %}
|
||||
|
||||

|
||||
1. Clique em **Salvar grupo** para criar o grupo e aplicar a política.
|
||||

|
||||
1. Click **Save group** to create the group and apply the policy.
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
## Alterar a política de acesso de um grupo de executores auto-hospedados
|
||||
## Changing the access policy of a self-hosted runner group
|
||||
|
||||
Você pode atualizar a política de acesso de um grupo de executores ou renomear um grupo de executores.
|
||||
You can update the access policy of a runner group, or rename a runner group.
|
||||
{% ifversion fpt or ghec %}
|
||||
{% data reusables.github-actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %}
|
||||
{% data reusables.github-actions.settings-sidebar-actions-runner-groups-selection %}
|
||||
1. Modifique as opções de acesso ou altere o nome do grupo dp executor.
|
||||
1. Modify the access options, or change the runner group name.
|
||||
|
||||
{% warning %}
|
||||
|
||||
**Aviso**
|
||||
**Warning**
|
||||
|
||||
{% indented_data_reference reusables.github-actions.self-hosted-runner-security spaces=3 %}
|
||||
|
||||
Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)."
|
||||
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 %}
|
||||
{% ifversion ghae or ghes %}
|
||||
{% data reusables.github-actions.self-hosted-runner-configure-runner-group-access %}
|
||||
{% endif %}
|
||||
## Adicionando um executor auto-hospedado a um grupo automaticamente
|
||||
|
||||
Você pode usar o script de configuração para adicionar automaticamente um novo executor auto-hospedado a um grupo. Por exemplo, este comando registra um novo executor auto-hospedado e usa o parâmetro `--runnergroup` para adicioná-lo a um grupo denominado `rg-runnergroup`.
|
||||
{% ifversion ghec or ghes or ghae %}
|
||||
## Automatically adding a self-hosted runner to a group
|
||||
|
||||
You can use the configuration script to automatically add a new self-hosted runner to a group. For example, this command registers a new self-hosted runner and uses the `--runnergroup` parameter to add it to a group named `rg-runnergroup`.
|
||||
|
||||
```sh
|
||||
./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup
|
||||
```
|
||||
|
||||
O comando irá falhar se o grupo do executor não existir:
|
||||
The command will fail if the runner group doesn't exist:
|
||||
|
||||
```
|
||||
Não foi possível encontrar nenhum grupo de executor auto-hospedado denominado "rg-runnergroup".
|
||||
Could not find any self-hosted runner group named "rg-runnergroup".
|
||||
```
|
||||
|
||||
## Mover um executor auto-hospedado para um grupo
|
||||
## Moving a self-hosted runner to a group
|
||||
|
||||
Se você não especificar o grupo de um executor durante o processo de registro, seus novos executores auto-hospedados são automaticamente atribuídos ao grupo padrão e poderão ser transferidos para outro grupo.
|
||||
{% ifversion fpt or ghec or ghes > 3.1 or ghae-next %}
|
||||
If you don't specify a runner group during the registration process, your new self-hosted runners are automatically assigned to the default group, and can then be moved to another group.
|
||||
{% ifversion ghec or ghes > 3.1 or ghae-next %}
|
||||
{% data reusables.github-actions.self-hosted-runner-navigate-to-org-enterprise %}
|
||||
1. Na lista de "Executores", clique no executor que você deseja configurar.
|
||||
1. Selecione o menu suspenso do grupo do executor.
|
||||
1. Em "Transferir executor para o grupo", escolha um grupo de destino para o executor.
|
||||
{% else %}
|
||||
1. Na seção "executores auto-hospedados" da página de configurações, localize o grupo atual do executor que deseja mover e expandir a lista de integrantes do grupo. 
|
||||
1. Marque a caixa de seleção ao lado do executor auto-hospedado e, em seguida, clique em **Mover para o grupo** para ver os destinos disponíveis. 
|
||||
1. Para mover o executor, clique no grupo de destino. 
|
||||
1. In the "Runners" list, click the runner that you want to configure.
|
||||
2. Select the Runner group dropdown menu.
|
||||
3. In "Move runner to group", choose a destination group for the runner.
|
||||
{% endif %}
|
||||
## Remover um grupo de executor auto-hospedado
|
||||
{% ifversion ghes < 3.2 or ghae %}
|
||||
1. In the "Self-hosted runners" section of the settings page, locate the current group of the runner you want to move and expand the list of group members.
|
||||

|
||||
2. Select the checkbox next to the self-hosted runner, and then click **Move to group** to see the available destinations.
|
||||

|
||||
3. To move the runner, click on the destination group.
|
||||

|
||||
{% endif %}
|
||||
## Removing a self-hosted runner group
|
||||
|
||||
Os executores auto-hospedados são retornados automaticamente ao grupo-padrão quando seu grupo é removido.
|
||||
Self-hosted runners are automatically returned to the default group when their group is removed.
|
||||
|
||||
{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}
|
||||
{% ifversion ghes > 3.1 or ghae-next or ghec %}
|
||||
{% data reusables.github-actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %}
|
||||
1. Na lista de grupos, à direita do grupo que você deseja excluir, clique em {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}.
|
||||
1. Para remover o grupo, clique em **Remover grupo**.
|
||||
1. Revise os avisos de confirmação e, em seguida, clique em **Remover este grupo de executores**.
|
||||
{% else %}
|
||||
1. Na seção "Executores auto-hospedados" da página de configurações, localize o grupo que você deseja excluir e clique no botão {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} . 
|
||||
|
||||
1. Para remover o grupo, clique em **Remover grupo**. 
|
||||
|
||||
1. Revise os avisos de confirmação e, em seguida, clique em **Remover este grupo de executores**.
|
||||
1. In the list of groups, to the right of the group you want to delete, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}.
|
||||
2. To remove the group, click **Remove group**.
|
||||
3. Review the confirmation prompts, and click **Remove this runner group**.
|
||||
{% endif %}
|
||||
{% ifversion ghes < 3.2 or ghae %}
|
||||
1. In the "Self-hosted runners" section of the settings page, locate the group you want to delete, and click the {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} button.
|
||||

|
||||
|
||||
1. To remove the group, click **Remove group**.
|
||||

|
||||
|
||||
1. Review the confirmation prompts, and click **Remove this runner group**.
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Removing self-hosted runners
|
||||
intro: 'You can permanently remove a self-hosted runner from a repository, an organization, or an enterprise.'
|
||||
intro: 'You can permanently remove a self-hosted runner from a repository{% ifversion fpt %} or organization{% elsif ghec or ghes or gahe %}, an organization, or an enterprise{% endif %}.'
|
||||
redirect_from:
|
||||
- /github/automating-your-workflow-with-github-actions/removing-self-hosted-runners
|
||||
- /actions/automating-your-workflow-with-github-actions/removing-self-hosted-runners
|
||||
@@ -73,6 +73,10 @@ To remove a self-hosted runner from an organization, you must be an organization
|
||||
{% endif %}
|
||||
## Removing a runner from an enterprise
|
||||
|
||||
{% ifversion fpt %}
|
||||
If you use {% data variables.product.prodname_ghe_cloud %}, you can also remove runners from an enterprise. For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-an-enterprise).
|
||||
{% endif %}
|
||||
{% ifversion ghec or ghes or ghae %}
|
||||
{% note %}
|
||||
|
||||
**Note:** {% data reusables.github-actions.self-hosted-runner-removal-impact %}
|
||||
@@ -80,9 +84,10 @@ To remove a self-hosted runner from an organization, you must be an organization
|
||||
{% data reusables.github-actions.self-hosted-runner-auto-removal %}
|
||||
|
||||
{% endnote %}
|
||||
|
||||
{% data reusables.github-actions.self-hosted-runner-reusing %}
|
||||
|
||||
{% ifversion fpt or ghec %}
|
||||
{% ifversion ghec %}
|
||||
To remove a self-hosted runner from an enterprise account, you must be an enterprise owner. We recommend that you also have access to the self-hosted runner machine. For information about how to add a self-hosted runner with the REST API, see the [Enterprise Administration GitHub Actions APIs](/rest/reference/enterprise-admin#github-actions).
|
||||
{% data reusables.enterprise-accounts.access-enterprise %}
|
||||
{% data reusables.enterprise-accounts.policies-tab %}
|
||||
@@ -98,3 +103,4 @@ To remove a self-hosted runner at the enterprise level of {% data variables.prod
|
||||
{% data reusables.enterprise-accounts.actions-runners-tab %}
|
||||
{% data reusables.github-actions.self-hosted-runner-removing-a-runner %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
@@ -465,7 +465,7 @@ In this example, `job3` uses the `always()` conditional expression so that it al
|
||||
|
||||
## `jobs.<job_id>.runs-on`
|
||||
|
||||
**Required**. The type of machine to run the job on. The machine can be either a {% data variables.product.prodname_dotcom %}-hosted runner or a self-hosted runner.
|
||||
**Required**. The type of machine to run the job on. The machine can be either a {% data variables.product.prodname_dotcom %}-hosted runner or a self-hosted runner. You can provide `runs-on` as a single string or as an array of strings.
|
||||
|
||||
{% ifversion ghae %}
|
||||
### {% data variables.actions.hosted_runner %}s
|
||||
|
||||
@@ -137,3 +137,4 @@ includeGuides:
|
||||
- /admin/user-management/suspending-and-unsuspending-users
|
||||
- /admin/overview/creating-an-enterprise-account
|
||||
---
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Guias para segurança do código
|
||||
intro: 'Saiba mais sobre as diferentes maneiras que {% data variables.product.product_name %} pode ajudar você a melhorar a segurança do seu código.'
|
||||
title: Guides for code security
|
||||
intro: 'Learn about the different ways that {% data variables.product.product_name %} can help you improve your code''s security.'
|
||||
allowTitleToDifferFromFilename: true
|
||||
layout: product-guides
|
||||
versions:
|
||||
@@ -78,3 +78,4 @@ includeGuides:
|
||||
- /code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph
|
||||
- /code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository
|
||||
---
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Gerenciando alertas do escaneamento secreto
|
||||
intro: Você pode visualizar e fechar alertas de segredos verificados para seu repositório.
|
||||
title: Managing alerts from secret scanning
|
||||
intro: You can view and close alerts for secrets checked in to your repository.
|
||||
product: '{% data reusables.gated-features.secret-scanning %}'
|
||||
redirect_from:
|
||||
- /github/administering-a-repository/managing-alerts-from-secret-scanning
|
||||
@@ -16,51 +16,55 @@ topics:
|
||||
- Advanced Security
|
||||
- Alerts
|
||||
- Repositories
|
||||
shortTitle: Gerenciar alertas de segredos
|
||||
shortTitle: Manage secret alerts
|
||||
---
|
||||
|
||||
{% data reusables.secret-scanning.beta %}
|
||||
|
||||
## Gerenciando alertas de {% data variables.product.prodname_secret_scanning %}
|
||||
## Managing {% data variables.product.prodname_secret_scanning %} alerts
|
||||
|
||||
{% data reusables.repositories.navigate-to-repo %}
|
||||
{% data reusables.repositories.sidebar-security %}
|
||||
3. Na barra lateral esquerda, clique em **Alertas de varredura de segredo**.
|
||||
3. In the left sidebar, click **Secret scanning alerts**.
|
||||
{% ifversion fpt or ghes or ghec %}
|
||||

|
||||

|
||||
{% endif %}
|
||||
{% ifversion ghae %}
|
||||

|
||||

|
||||
{% endif %}
|
||||
4. Em "Escaneamento de segredos", clique no alerta que desejar visualizar.
|
||||
4. Under "Secret scanning" click the alert you want to view.
|
||||
{% ifversion fpt or ghec %}
|
||||

|
||||

|
||||
{% endif %}
|
||||
{% ifversion ghes %}
|
||||

|
||||

|
||||
{% endif %}
|
||||
{% ifversion ghae %}
|
||||

|
||||

|
||||
{% endif %}
|
||||
5. {% ifversion fpt or ghec %}
|
||||
Optionally, use the "Close as" drop-down menu and click a reason for resolving an alert.
|
||||
{%- elsif ghes or ghae %}
|
||||
Optionally, use the "Mark as" drop-down menu and click a reason for resolving an alert.
|
||||
{% endif %}
|
||||
5. Opcionalmente, use o menu suspenso "Marcar como" e clique em um motivo para resolver um alerta.
|
||||
{% ifversion fpt or ghec %}
|
||||

|
||||

|
||||
{% endif %}
|
||||
{% ifversion ghes or ghae %}
|
||||

|
||||

|
||||
{% endif %}
|
||||
|
||||
## Protegendo segredos comprometidos
|
||||
## Securing compromised secrets
|
||||
|
||||
Uma vez que um segredo tenha sido committed a um repositório, você deve considerar o segredo comprometido. O {% data variables.product.prodname_dotcom %} recomenda as seguintes ações para segredos comprometidos:
|
||||
Once a secret has been committed to a repository, you should consider the secret compromised. {% data variables.product.prodname_dotcom %} recommends the following actions for compromised secrets:
|
||||
|
||||
- Para um token de acesso pessoal do {% data variables.product.prodname_dotcom %}, exclua o token comprometido, crie outro token e atualize os serviços que usam o token antigo. Para obter mais informações, consulte "[Criar um token de acesso pessoal para a linha de comando](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)".
|
||||
- Para todos os outros segredos, primeiro, verifique se o segredo commited para {% data variables.product.product_name %} é válido. Se sim, crie um novo segredo, atualize quaisquer serviços que utilizam o segredo antigo, e depois exclua o segredo antigo.
|
||||
- For a compromised {% data variables.product.prodname_dotcom %} personal access token, delete the compromised token, create a new token, and update any services that use the old token. For more information, see "[Creating a personal access token for the command line](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)."
|
||||
- For all other secrets, first verify that the secret committed to {% data variables.product.product_name %} is valid. If so, create a new secret, update any services that use the old secret, and then delete the old secret.
|
||||
|
||||
{% ifversion fpt or ghes > 3.1 or ghae-issue-4910 or ghec %}
|
||||
## Configurando notificações para alertas de {% data variables.product.prodname_secret_scanning %}
|
||||
## Configuring notifications for {% data variables.product.prodname_secret_scanning %} alerts
|
||||
|
||||
Quando um novo segredo é detectado, {% data variables.product.product_name %} notifica todos os usuários com acesso a alertas de segurança para o repositório, de acordo com suas preferências de notificação. Você receberá alertas se estiver inspecionando o repositório, se tiver habilitado as notificações para alertas de segurança ou para todas as atividades no repositório, se for o autor do commit que contém o segredo e não estiver ignorando o repositório.
|
||||
When a new secret is detected, {% data variables.product.product_name %} notifies all users with access to security alerts for the repository according to their notification preferences. You will receive alerts if you are watching the repository, have enabled notifications for security alerts or for all the activity on the repository, are the author of the commit that contains the secret and are not ignoring the repository.
|
||||
|
||||
Para obter mais informações, consulte "[Gerenciar configurações de segurança e análise do repositório](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)" e "[Configurar notificações](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository)".
|
||||
For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)" and "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository)."
|
||||
{% endif %}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
---
|
||||
title: Guias de codespaces
|
||||
shortTitle: Guias
|
||||
title: Codespaces guides
|
||||
shortTitle: Guides
|
||||
product: '{% data reusables.gated-features.codespaces %}'
|
||||
intro: Aprenda a aproveitar ao máximo do GitHub
|
||||
intro: Learn how to make the most of GitHub
|
||||
allowTitleToDifferFromFilename: true
|
||||
layout: product-guides
|
||||
versions:
|
||||
@@ -41,3 +41,4 @@ includeGuides:
|
||||
- /codespaces/codespaces-reference/disaster-recovery-for-codespaces
|
||||
- /codespaces/codespaces-reference/security-in-codespaces
|
||||
---
|
||||
|
||||
|
||||
@@ -60,8 +60,8 @@ The complete list of available query parameters, permissions, and events is list
|
||||
`webhook_active` | `boolean` | Set to `false` to disable webhook. Webhook is enabled by default.
|
||||
`webhook_url` | `string` | The full URL that you would like to send webhook event payloads to.
|
||||
{% ifversion ghes < 3.2 or ghae %}`webhook_secret` | `string` | You can specify a secret to secure your webhooks. See "[Securing your webhooks](/webhooks/securing/)" for more details.
|
||||
{% endif %}`events` | `array of strings` | Webhook events. Some webhook events require `read` or `write` permissions for a resource before you can select the event when registering a new {% data variables.product.prodname_github_app %}. See the "[{% data variables.product.prodname_github_app %} webhook events](#github-app-webhook-events)" section for available events and their required permissions. You can select multiple events in a query string. For example, `events[]=public&events[]=label`.
|
||||
`domain` | `string` | The URL of a content reference.
|
||||
{% endif %}`events` | `array of strings` | Webhook events. Some webhook events require `read` or `write` permissions for a resource before you can select the event when registering a new {% data variables.product.prodname_github_app %}. See the "[{% data variables.product.prodname_github_app %} webhook events](#github-app-webhook-events)" section for available events and their required permissions. You can select multiple events in a query string. For example, `events[]=public&events[]=label`.{% ifversion ghes < 3.4 %}
|
||||
`domain` | `string` | The URL of a content reference.{% endif %}
|
||||
`single_file_name` | `string` | This is a narrowly-scoped permission that allows the app to access a single file in any repository. When you set the `single_file` permission to `read` or `write`, this field provides the path to the single file your {% data variables.product.prodname_github_app %} will manage. {% ifversion fpt or ghes or ghec %} If you need to manage multiple files, see `single_file_paths` below. {% endif %}{% ifversion fpt or ghes or ghec %}
|
||||
`single_file_paths` | `array of strings` | This allows the app to access up ten specified files in a repository. When you set the `single_file` permission to `read` or `write`, this array can store the paths for up to ten files that your {% data variables.product.prodname_github_app %} will manage. These files all receive the same permission set by `single_file`, and do not have separate individual permissions. When two or more files are configured, the API returns `multiple_single_files=true`, otherwise it returns `multiple_single_files=false`.{% endif %}
|
||||
|
||||
@@ -73,8 +73,8 @@ Permission | Description
|
||||
---------- | -----------
|
||||
[`administration`](/rest/reference/permissions-required-for-github-apps/#permission-on-administration) | Grants access to various endpoints for organization and repository administration. Can be one of: `none`, `read`, or `write`.{% ifversion fpt or ghec %}
|
||||
[`blocking`](/rest/reference/permissions-required-for-github-apps/#permission-on-blocking) | Grants access to the [Blocking Users API](/rest/reference/users#blocking). Can be one of: `none`, `read`, or `write`.{% endif %}
|
||||
[`checks`](/rest/reference/permissions-required-for-github-apps/#permission-on-checks) | Grants access to the [Checks API](/rest/reference/checks). Can be one of: `none`, `read`, or `write`.
|
||||
`content_references` | Grants access to the "[Create a content attachment](/rest/reference/apps#create-a-content-attachment)" endpoint. Can be one of: `none`, `read`, or `write`.
|
||||
[`checks`](/rest/reference/permissions-required-for-github-apps/#permission-on-checks) | Grants access to the [Checks API](/rest/reference/checks). Can be one of: `none`, `read`, or `write`.{% ifversion ghes < 3.4 %}
|
||||
`content_references` | Grants access to the "[Create a content attachment](/rest/reference/apps#create-a-content-attachment)" endpoint. Can be one of: `none`, `read`, or `write`.{% endif %}
|
||||
[`contents`](/rest/reference/permissions-required-for-github-apps/#permission-on-contents) | Grants access to various endpoints that allow you to modify repository contents. Can be one of: `none`, `read`, or `write`.
|
||||
[`deployments`](/rest/reference/permissions-required-for-github-apps/#permission-on-deployments) | Grants access to the [Deployments API](/rest/reference/repos#deployments). Can be one of: `none`, `read`, or `write`.{% ifversion fpt or ghes or ghec %}
|
||||
[`emails`](/rest/reference/permissions-required-for-github-apps/#permission-on-emails) | Grants access to the [Emails API](/rest/reference/users#emails). Can be one of: `none`, `read`, or `write`.{% endif %}
|
||||
@@ -109,8 +109,8 @@ Webhook event name | Required permission | Description
|
||||
------------------ | ------------------- | -----------
|
||||
[`check_run`](/webhooks/event-payloads/#check_run) |`checks` | {% data reusables.webhooks.check_run_short_desc %}
|
||||
[`check_suite`](/webhooks/event-payloads/#check_suite) |`checks` | {% data reusables.webhooks.check_suite_short_desc %}
|
||||
[`commit_comment`](/webhooks/event-payloads/#commit_comment) | `contents` | {% data reusables.webhooks.commit_comment_short_desc %}
|
||||
[`content_reference`](/webhooks/event-payloads/#content_reference) |`content_references` | {% data reusables.webhooks.content_reference_short_desc %}
|
||||
[`commit_comment`](/webhooks/event-payloads/#commit_comment) | `contents` | {% data reusables.webhooks.commit_comment_short_desc %}{% ifversion ghes < 3.4 %}
|
||||
[`content_reference`](/webhooks/event-payloads/#content_reference) |`content_references` | {% data reusables.webhooks.content_reference_short_desc %}{% endif %}
|
||||
[`create`](/webhooks/event-payloads/#create) | `contents` | {% data reusables.webhooks.create_short_desc %}
|
||||
[`delete`](/webhooks/event-payloads/#delete) | `contents` | {% data reusables.webhooks.delete_short_desc %}
|
||||
[`deployment`](/webhooks/event-payloads/#deployment) | `deployments` | {% data reusables.webhooks.deployment_short_desc %}
|
||||
|
||||
@@ -5,10 +5,7 @@ redirect_from:
|
||||
- /apps/using-content-attachments
|
||||
- /developers/apps/using-content-attachments
|
||||
versions:
|
||||
fpt: '*'
|
||||
ghes: '*'
|
||||
ghae: '*'
|
||||
ghec: '*'
|
||||
ghes: '<3.4'
|
||||
topics:
|
||||
- GitHub Apps
|
||||
---
|
||||
|
||||
@@ -218,6 +218,7 @@ Key | Type | Description
|
||||
|
||||
{{ webhookPayloadsForCurrentVersion.commit_comment.created }}
|
||||
|
||||
{% ifversion ghes < 3.4 %}
|
||||
## content_reference
|
||||
|
||||
{% data reusables.webhooks.content_reference_short_desc %}
|
||||
@@ -232,6 +233,7 @@ Webhook events are triggered based on the specificity of the domain you register
|
||||
|
||||
{{ webhookPayloadsForCurrentVersion.content_reference.created }}
|
||||
|
||||
{% endif %}
|
||||
## create
|
||||
|
||||
{% data reusables.webhooks.create_short_desc %}
|
||||
|
||||
@@ -242,6 +242,7 @@ For more information, see "[Autolinked references and URLs](/articles/autolinked
|
||||
|
||||
{% data reusables.repositories.autolink-references %}
|
||||
|
||||
{% ifversion ghes < 3.4 %}
|
||||
## Content attachments
|
||||
|
||||
Some {% data variables.product.prodname_github_apps %} provide information in {% data variables.product.product_name %} for URLs that link to their registered domains. {% data variables.product.product_name %} renders the information provided by the app under the URL in the body or comment of an issue or pull request.
|
||||
@@ -252,7 +253,7 @@ To see content attachments, you must have a {% data variables.product.prodname_g
|
||||
|
||||
Content attachments will not be displayed for URLs that are part of a markdown link.
|
||||
|
||||
For more information about building a {% data variables.product.prodname_github_app %} that uses content attachments, see "[Using Content Attachments](/apps/using-content-attachments)."
|
||||
For more information about building a {% data variables.product.prodname_github_app %} that uses content attachments, see "[Using Content Attachments](/apps/using-content-attachments)."{% endif %}
|
||||
|
||||
## Uploading assets
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Issues guides
|
||||
shortTitle: Guias
|
||||
intro: 'Saiba como usar {% data variables.product.prodname_github_issues %} para planejar e acompanhar seu trabalho.'
|
||||
shortTitle: Guides
|
||||
intro: 'Learn how you can use {% data variables.product.prodname_github_issues %} to plan and track your work.'
|
||||
allowTitleToDifferFromFilename: true
|
||||
layout: product-guides
|
||||
versions:
|
||||
|
||||
@@ -183,6 +183,7 @@ You can now configure whether organization members can create repositories and w
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% ifversion ghes < 3.4 %}
|
||||
## Content attachments
|
||||
|
||||
You can now provide more information in GitHub for URLs that link to registered domains by using the {% data variables.product.prodname_unfurls %} API. See "[Using content attachments](/apps/using-content-attachments/)" for more details.
|
||||
@@ -190,6 +191,7 @@ You can now provide more information in GitHub for URLs that link to registered
|
||||
**Custom media types:** `corsair-preview`
|
||||
**Announced:** [2018-12-10](https://developer.github.com/changes/2018-12-10-content-attachments-api/)
|
||||
|
||||
{% endif %}
|
||||
{% ifversion ghae or ghes < 3.3 %}
|
||||
|
||||
## Enable and disable Pages
|
||||
|
||||
@@ -878,6 +878,7 @@ _Teams_
|
||||
- [`GET /repos/:owner/:repo/secret-scanning/alerts`](/rest/reference/secret-scanning#list-secret-scanning-alerts-for-a-repository) (:read)
|
||||
- [`GET /repos/:owner/:repo/secret-scanning/alerts/:alert_number`](/rest/reference/secret-scanning#get-a-secret-scanning-alert) (:read)
|
||||
- [`PATCH /repos/:owner/:repo/secret-scanning/alerts/:alert_number`](/rest/reference/secret-scanning#update-a-secret-scanning-alert) (:write)
|
||||
- [`GET /repos/:owner/:repo/secret-scanning/alerts/:alert_number/locations`](/rest/reference/secret-scanning#list-locations-for-a-secret-scanning-alert) (:read)
|
||||
{% endif %}
|
||||
|
||||
### Permission on "security events"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
title: Guias do GitHub Sponsors
|
||||
shortTitle: Guias
|
||||
intro: 'Aprenda a tirar o melhor de {% data variables.product.prodname_sponsors %}.'
|
||||
title: GitHub Sponsors guides
|
||||
shortTitle: Guides
|
||||
intro: 'Learn how to make the most of {% data variables.product.prodname_sponsors %}.'
|
||||
allowTitleToDifferFromFilename: true
|
||||
layout: product-guides
|
||||
versions:
|
||||
@@ -16,3 +16,4 @@ includeGuides:
|
||||
- /sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization
|
||||
- /sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account
|
||||
---
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ Os trilhos de aprendizado são uma coleção de artigos que ajudam você a domin
|
||||
|
||||
Os dados do caminho de aprendizagem para um produto são definidos em dois lugares:
|
||||
|
||||
1. Uma simples matriz de nomes de faixas de aprendizagem é definida na página inicial do produto na primeira página.
|
||||
1. A simple array of learning track names is defined in the product guides index page frontmatter.
|
||||
|
||||
Por exemplo, em `content/actions/guides/index.md`:
|
||||
```
|
||||
@@ -23,13 +23,13 @@ Os dados do caminho de aprendizagem para um produto são definidos em dois lugar
|
||||
|
||||
<p spaces-before="4">Por exemplo, em <code>data/learning-tracks/actions.yml`, cada um dos itens da matriz do arquivo de conteúdo `learningTracks` é representado com dados adicionais como `título`, `descrição`e uma matriz de links `guias`.</p>
|
||||
|
||||
Uma faixa de aprendizagem neste YAML **por versão** deve ser designada como uma faixa de aprendizagem "destacada" via `featured_track: true`, que será configurada para aparecer na parte superior da página subinicial do produto. Um teste falhará se esta propriedade estiver ausente.
|
||||
One learning track in this YAML **per version** must be designated as a "featured" learning track via `featured_track: true`, which will set it to appear at the top of the product guides page. Um teste falhará se esta propriedade estiver ausente.
|
||||
|
||||
A propriedade `featured_track` pode ser um booleano simples (ou seja, `featured_track: true`) ou pode ser uma string que inclua declarações (p. ex., `featured_track: '{% ifversion fpt %}true{% else %}falso{% endif %}'`). Se você usar o versionamento, terá múltiplos `featured_track`s por arquivo YML, mas certifique-se de que apenas uma versão será interpretada em cada versão atualmente suportada. Um teste irá falhar se houver mais ou menos do que um link em destaque para cada versão.</li> </ol>
|
||||
|
||||
## Controle de Versão
|
||||
|
||||
O versionamento para faixas de aprendizagem é processado na página tempo de interpretação. O código encontra-se em [`lib/learning-tracks.js`](lib/learning-tracks.js), que é chamado por `page.render()`. As faixas de aprendizagem processadas são então interpretadas por `components/sublanding`.
|
||||
O versionamento para faixas de aprendizagem é processado na página tempo de interpretação. O código encontra-se em [`lib/learning-tracks.js`](lib/learning-tracks.js), que é chamado por `page.render()`. The processed learning tracks are then rendered by `components/guides`.
|
||||
|
||||
Condicionais líquidas **não** tem que ser usadas para versionamento no arquivo YAML para guias. Apenas os guias do caminho de aprendizagem que se aplicam à versão atual serão processados automaticamente. Se não houver nenhuma faixa com guias que pertençam à versão atual, a seção de faixas de aprendizado não será interpretada.
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
<a href="https://github.com/account/organizations/new?plan=business_plus" class="btn btn-primary btn-large f4 mt-3 mr-3">Try risk-free for 14 days</a>
|
||||
<a href="https://github.com/account/organizations/new?plan=business_plus" class="btn btn-primary btn-large f4 mt-3 mr-3">Try {% data variables.product.prodname_ghe_cloud %} for free</a>
|
||||
|
||||
@@ -1 +1 @@
|
||||
Environments, environment protection rules, and environment secrets are available in **public** repositories for all products. For access to environments in **private** repositories, you must use {% data variables.product.prodname_enterprise %}.{% ifversion fpt or ghec %} {% data reusables.gated-features.more-info %}{% endif %}
|
||||
Environments, environment protection rules, and environment secrets are available in **public** repositories for all products. For access to environments in **private** repositories, you must use {% data variables.product.prodname_enterprise %}. {% data reusables.gated-features.more-info %}
|
||||
|
||||
@@ -1,10 +1,17 @@
|
||||
{% ifversion fpt %}
|
||||
1. Navigate to the main page of the repository or organization where your self-hosted runner groups are located.
|
||||
2. Click {% octicon "gear" aria-label="The Settings gear" %} **Settings**.
|
||||
3. Na barra lateral esquerda, clique em **Actions** (Ações).
|
||||
4. Click **Runner groups**.
|
||||
{% elsif ghec or ghes or ghae %}
|
||||
1. Navigate to where your self-hosted runner groups are located:
|
||||
* **In an organization**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**.
|
||||
* {% ifversion fpt or ghec %}**Se você estiver usando uma conta corporativa**: acesse a conta corporativa visitando `https://github. om/enterprises/ENTERPRISE-NAME` e substituindo `ENTERPRISE-NAME` pelo nome da sua conta corporativa.{% elsif ghes or ghae %}**Se estiver usando um executor de nível corporativo**:
|
||||
|
||||
* **In an organization**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**.{% ifversion ghec %}
|
||||
* **If using an enterprise account**: navigate to your enterprise account by visiting `https://github.com/enterprises/ENTERPRISE-NAME`, replacing `ENTERPRISE-NAME` with your enterprise account's name.{% elsif ghes or ghae %}
|
||||
* **Se estiver usando um executor de nível corporativo**:
|
||||
1. No canto superior direito de qualquer página, clique em {% octicon "rocket" aria-label="The rocket ship" %}.
|
||||
1. Na barra lateral esquerda, clique em **Visão geral da empresa**.
|
||||
1. {% endif %} Na barra lateral da empresa, {% octicon "law" aria-label="The law icon" %} **Políticas**.
|
||||
1. Navigate to the "Runner groups" settings:
|
||||
* **In an organization**: Click **Actions** in the left sidebar{% ifversion fpt or ghec %}, then click **Runner groups** below it{% endif %}.
|
||||
* {% ifversion fpt or ghec %}**If using an enterprise account**:{% elsif ghes or ghae %}**If using an enterprise-level runner**:{% endif %} Click **Actions** under "{% octicon "law" aria-label="The law icon" %} Policies"{% ifversion fpt or ghec %}, then click the **Runners groups** tab{% endif %}.
|
||||
2. Na barra lateral esquerda, clique em **Visão geral da empresa**.
|
||||
3. In the enterprise sidebar, click {% octicon "law" aria-label="The law icon" %} **Policies**.{% endif %}
|
||||
2. Navigate to the "Runner groups" settings:
|
||||
* **In an organization**: Click **Actions** in the left sidebar{% ifversion fpt or ghec %}, then click **Runner groups** below it{% endif %}.{% ifversion ghec or ghes or ghae %}
|
||||
* {% ifversion ghec %}**If using an enterprise account**:{% elsif ghes or ghae %}**If using an enterprise-level runner**:{% endif %} Click **Actions** under "{% octicon "law" aria-label="The law icon" %} Policies"{% ifversion ghec %}, then click the **Runners groups** tab{% endif %}.{% endif %}
|
||||
{% endif %}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
Para especificar um executor auto-hospedado para o seu trabalho, configure `runs-on` no seu arquivo de fluxo de trabalho com etiquetas de executores auto-hospedados.
|
||||
|
||||
All self-hosted runners have the `self-hosted` label. Using only this label will select any self-hosted runner. To select runners that meet certain criteria, such as operating system or architecture, provide an array of labels that begins with `self-hosted` (this must be listed first) and then includes additional labels as needed.
|
||||
All self-hosted runners have the `self-hosted` label. Using only this label will select any self-hosted runner. To select runners that meet certain criteria, such as operating system or architecture, we recommend providing an array of labels that begins with `self-hosted` (this must be listed first) and then includes additional labels as needed. When you specify an array of labels, jobs will be queued on runners that have all the labels that you specify.
|
||||
|
||||
Although the `self-hosted` label is not required, we strongly recommend specifying it when using self-hosted runners to ensure that your job does not unintentionally specify any current or future {% data variables.product.prodname_dotcom %}-hosted runners.
|
||||
|
||||
@@ -2,7 +2,7 @@ A self-hosted runner can be located in either your repository, organization, or
|
||||
- **User repository**: You must be the repository owner.
|
||||
- **Organization**: You must be an organization owner.
|
||||
- **Organization repository**: You must be an organization owner, or have admin access to the repository.
|
||||
{% ifversion fpt or ghec %}
|
||||
{% ifversion ghec %}
|
||||
- **Enterprise account**: You must be an enterprise owner.
|
||||
{% elsif ghes or ghae %}
|
||||
- **Enterprise**: You must be a {% data variables.product.prodname_enterprise %} site administrator.
|
||||
|
||||
@@ -1,10 +1,17 @@
|
||||
{% ifversion fpt %}
|
||||
1. Navigate to the main page of the organization where your self-hosted runner group is registered.
|
||||
2. Click {% octicon "gear" aria-label="The Settings gear" %} **Settings**.
|
||||
3. Na barra lateral esquerda, clique em **Actions** (Ações).
|
||||
4. Click **Runners**.
|
||||
{% elsif ghec or ghes or ghae %}
|
||||
1. Navegue por onde seu runner auto-hospedado está registrado:
|
||||
* **In an organization**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**.
|
||||
* {% ifversion fpt %}**Se você estiver usando uma conta corporativa**: acesse a conta corporativa visitando `https://github. om/enterprises/ENTERPRISE-NAME` e substituindo `ENTERPRISE-NAME` pelo nome da sua conta corporativa.{% elsif ghes or ghae %}**Se estiver usando um executor de nível corporativo**:
|
||||
* {% ifversion ghec %}**Se você estiver usando uma conta corporativa**: acesse a conta corporativa visitando `https://github. om/enterprises/ENTERPRISE-NAME` e substituindo `ENTERPRISE-NAME` pelo nome da sua conta corporativa.{% elsif ghes or ghae %}**Se estiver usando um executor de nível corporativo**:
|
||||
|
||||
1. No canto superior direito de qualquer página, clique em {% octicon "rocket" aria-label="The rocket ship" %}.
|
||||
1. Na barra lateral esquerda, clique em **Visão geral da empresa**.
|
||||
1. {% endif %} Na barra lateral da empresa, {% octicon "law" aria-label="The law icon" %} **Políticas**.
|
||||
1. In the enterprise sidebar, {% octicon "law" aria-label="The law icon" %} **Policies**.{% endif %}
|
||||
1. Navegue até as configurações {% data variables.product.prodname_actions %}:
|
||||
* **In an organization**: Click **Actions** in the left sidebar{% ifversion fpt or ghes > 3.1 or ghae-next %}, then click **Runners**{% endif %}.
|
||||
* {% ifversion fpt %}**Se você estiver usando uma conta corporativa**:{% elsif ghes or ghae %}**Se estiver usando um executor de nível corporativo**:{% endif %} Clique em **Ações** em "{% octicon "law" aria-label="The law icon" %} Políticas"{% ifversion fpt or ghes > 3.1 or ghae-next %} e, em seguida, clique na aba **Executores**{% endif %}.
|
||||
* **In an organization**: Click **Actions** in the left sidebar{% ifversion fpt or ghec or ghes > 3.1 or ghae-next %}, then click **Runners**{% endif %}.
|
||||
* {% ifversion ghec %}**Se você estiver usando uma conta corporativa**:{% elsif ghes or ghae %}**Se estiver usando um executor de nível corporativo**:{% endif %} Clique em **Ações** em "{% octicon "law" aria-label="The law icon" %} Políticas"{% ifversion fpt or ghec or ghes > 3.1 or ghae-next %} e, em seguida, clique na aba **Executores**{% endif %}.
|
||||
{% endif %}
|
||||
|
||||
@@ -1,10 +1,17 @@
|
||||
{% ifversion fpt %}
|
||||
1. Navigate to the main page of the organization or repository where your self-hosted runner group is registered.
|
||||
2. Click {% octicon "gear" aria-label="The Settings gear" %} **Settings**.
|
||||
3. In the left sidebar, click **Actions**.
|
||||
4. Click **Runners**.
|
||||
{% elsif ghec or ghes or ghae %}
|
||||
1. Navigate to where your self-hosted runner is registered:
|
||||
* **In an organization or repository**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**.
|
||||
* {% ifversion fpt or ghec %}**If using an enterprise account**: navigate to your enterprise account by visiting `https://github.com/enterprises/ENTERPRISE-NAME`, replacing `ENTERPRISE-NAME` with your enterprise account's name.{% elsif ghes or ghae %}**If using an enterprise-level runner**:
|
||||
|
||||
* **In an organization or repository**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. {% ifversion ghec %}
|
||||
* **If using an enterprise account**: navigate to your enterprise account by visiting `https://github.com/enterprises/ENTERPRISE-NAME`, replacing `ENTERPRISE-NAME` with your enterprise account's name.{% elsif ghes or ghae %}
|
||||
* **If using an enterprise-level runner**:
|
||||
1. In the upper-right corner of any page, click {% octicon "rocket" aria-label="The rocket ship" %}.
|
||||
1. In the left sidebar, click **Enterprise overview**.
|
||||
1. {% endif %} In the enterprise sidebar, {% octicon "law" aria-label="The law icon" %} **Policies**.
|
||||
1. Navigate to the {% data variables.product.prodname_actions %} settings:
|
||||
* **In an organization or repository**: Click **Actions** in the left sidebar{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, then click **Runners**{% endif %}.
|
||||
* {% ifversion fpt or ghec %}**If using an enterprise account**:{% elsif ghes or ghae %}**If using an enterprise-level runner**:{% endif %} Click **Actions** under "{% octicon "law" aria-label="The law icon" %} Policies"{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, then click the **Runners** tab{% endif %}.
|
||||
2. In the left sidebar, click **Enterprise overview**.
|
||||
3. In the enterprise sidebar, click {% octicon "law" aria-label="The law icon" %} **Policies**.{% endif %}
|
||||
2. Navigate to the {% data variables.product.prodname_actions %} settings:
|
||||
* **In an organization or repository**: Click **Actions** in the left sidebar{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, then click **Runners**{% endif %}.{% ifversion ghec or ghae or ghes %}
|
||||
* {% ifversion ghec %}**If using an enterprise account**:{% elsif ghes or ghae %}**If using an enterprise-level runner**:{% endif %} Click **Actions** under "{% octicon "law" aria-label="The law icon" %} Policies"{% ifversion ghes > 3.1 or ghae-next or ghec %}, then click the **Runners** tab{% endif %}.{% endif %}
|
||||
{% endif %}
|
||||
|
||||
@@ -1 +1 @@
|
||||
Como alternativa, se você não tiver acesso ao repositório, à organização ou corporação em {% data variables.product.product_name %} para remover um runner, mas você gostaria de reutilizar a máquina executora, você poderá excluir o arquivo `.runner` dentro do diretório de aplicação do runner auto-hospedado. Isso permite que o runner seja registrado sem ter que baixar novamente o aplicativo do runner auto-hospedado.
|
||||
Alternatively, if you don't have access to the repository{% ifversion fpt %} or organization{% elsif ghes or ghec or ghae %}, organization, or enterprise{% endif %} on {% data variables.product.product_name %} to remove a runner, but you would like to re-use the runner machine, then you can delete the `.runner` file inside the self-hosted runner application directory. Isso permite que o runner seja registrado sem ter que baixar novamente o aplicativo do runner auto-hospedado.
|
||||
|
||||
@@ -150,7 +150,7 @@ product_landing:
|
||||
upgrade_from: Upgrade from
|
||||
browse_all_docs: Browse all docs
|
||||
explore_release_notes: Explore release notes
|
||||
product_sublanding:
|
||||
product_guides:
|
||||
start: Início
|
||||
start_path: Caminho de início
|
||||
learning_paths: '{{ productMap[currentProduct].name }} learning paths'
|
||||
|
||||
Reference in New Issue
Block a user