Skip to main content

Managing GitHub Actions settings for a repository

You can disable or configure GitHub Actions for a specific repository.

About GitHub Actions permissions for your repository

Por padrão, GitHub Actions ficará habilitado em todos os repositórios e em todas as organizações. Você pode optar por desabilitar o GitHub Actions ou limitá-lo às ações e aos fluxos de trabalho reutilizáveis da sua organização. For more information about GitHub Actions, see "About GitHub Actions."

You can enable GitHub Actions for your repository. Quando você habilita o GitHub Actions, os fluxos de trabalho podem executar ações e fluxos de trabalho reutilizáveis localizados no seu repositório e em qualquer outro repositório público. You can disable GitHub Actions for your repository altogether. Quando desativar GitHub Actions, nenhum fluxo de trabalho é executado em seu repositório.

Alternatively, you can enable GitHub Actions in your repository but limit the actions and reusable workflows a workflow can run.

Managing GitHub Actions permissions for your repository

You can disable GitHub Actions for a repository, or set a policy that configures which actions and reusable workflows can be used in the repository.

Note: You might not be able to manage these settings if your organization has an overriding policy or is managed by an enterprise that has overriding policy. For more information, see "Disabling or limiting GitHub Actions for your organization" or "Enforcing policies for GitHub Actions in your enterprise."

  1. No GitHub.com, navegue até a página principal do repositório.

  2. Abaixo do nome do repositório, clique em Configurações. Botão Configurações do repositório

  3. In the left sidebar, click Actions, then click General.

  4. Under "Actions permissions", select an option.

    Se você escolher Permitir OWNER e ações e fluxos de trabalho reutilizáveis selecionados que não são do OWNER, as ações e os fluxos de trabalho reutilizáveis na organização serão permitidos, e haverá opções adicionais para permitir outras ações e fluxos de trabalho reutilizáveis específicos. Para obter mais informações, confira "Como permitir a execução de ações e fluxos de trabalho reutilizáveis selecionados".

    Quando você permite ações e fluxos de trabalho reutilizáveis somente no sua organização, a política bloqueia todo o acesso às ações criadas pelo GitHub. Por exemplo, a ação actions/checkout não estará acessível.

    Set actions policy for this repository

  5. Click Save.

Permitindo a execução de ações selecionadas e fluxos de trabalho reutilizáveis

Quando você escolhe Permitir OWNER e ações e fluxos de trabalho reutilizáveis selecionados que não são do OWNER, as ações locais e os fluxos de trabalho reutilizáveis são permitidos e há opções adicionais para permitir outras ações específicas e fluxos de trabalho reutilizáveis:

  • Permitir ações criadas pelo GitHub: você pode permitir que todas as ações criadas pelo GitHub sejam usadas por fluxos de trabalho. As ações criadas pelo GitHub estão localizadas nas organizações actions e github. Para obter mais informações, confira actions e organizações github.

  • Permitir ações do Marketplace de criadores verificados: Você pode permitir que todas as ações do GitHub Marketplace criadas por criadores verificados sejam usadas por fluxos de trabalho. Quando o GitHub verificou o criador da ação como uma organização parceira, o selo de é exibido ao lado da ação em GitHub Marketplace.

  • Permitir ações especificadas e fluxos de trabalho reutilizáveis: você pode restringir os fluxos de trabalho a usar ações e fluxos de trabalho reutilizáveis em organizações e repositórios específicos.

    Para restringir o acesso a tags ou SHAs de commit específicos de uma ação ou um fluxo de trabalho reutilizável, use a mesma sintaxe usada no fluxo de trabalho para selecionar a ação ou o fluxo de trabalho reutilizável.

    • Para uma ação, a sintaxe é <OWNER>/<REPO>@<TAG OR SHA>. Por exemplo, use actions/javascript-action@v1.0.1 para selecionar uma tag ou actions/javascript-action@172239021f7ba04fe7327647b213799853a9eb89 para selecionar um SHA. Para obter mais informações, confira "Como encontrar e personalizar ações".
    • Para um fluxo de trabalho reutilizável, a sintaxe é <OWNER>/<REPO>/<PATH>/<FILENAME>@<TAG OR SHA>. Por exemplo, octo-org/another-repo/.github/workflows/workflow.yml@v1. Para obter mais informações, confira "Como reutilizar fluxos de trabalho".

    Você pode usar o caractere curinga * para fazer a correspondência de padrões. Por exemplo, para permitir todas as ações e fluxos de trabalho reutilizáveis em organizações que começam com space-org, especifique space-org*/*. Para permitir todas as ações e fluxos de trabalho reutilizáveis em repositórios que começam com octocat, use */octocat**@*. Para obter mais informações sobre como usar o curinga *, confira "Sintaxe de fluxo de trabalho do GitHub Actions".

    Observação: a opção Permitir ações e fluxos de trabalho reutilizáveis especificados só está disponível em repositórios públicos com o GitHub Free, o GitHub Pro, o GitHub Free para organizações ou o plano do GitHub Team.

Este procedimento demonstra como adicionar ações e fluxos de trabalho reutilizáveis específicos à lista de permissões.

  1. No GitHub.com, navegue até a página principal do repositório.

  2. Abaixo do nome do repositório, clique em Configurações. Botão Configurações do repositório

  3. In the left sidebar, click Actions, then click General.

  4. Under "Actions permissions", select Permitir OWNER e ações e fluxos de trabalho reutilizáveis selecionados que não são do OWNER and add your required actions to the list.

    Add actions and reusable workflows to the allow list

  5. Click Save.

Controlling changes from forks to workflows in public repositories

Qualquer pessoa pode bifurcar um repositório público e, em seguida, enviar um pull request que proponha alterações nos fluxos de trabalho do repositório de GitHub Actions. Embora os fluxos de trabalho das bifurcações não tenham acesso a dados confidenciais como segredos, podem ser uma dor de cabeça para os mantenedores se forem modificados para fins abusivos.

Para ajudar a evitar isso, os fluxos de trabalho em pull requests para repositórios públicos de alguns contribuidores externos não serão executados automaticamente, e é possível que tenham de ser aprovados primeiro. Por padrão, todos os colaboradores iniciantes exigem aprovação para executar fluxos de trabalho.

Observação: os fluxos de trabalho disparados por eventos pull_request_target são executados no contexto do branch base. Como o branc de base é considerado confiável, os fluxos de trabalho acionados por esses eventos sempre serão executados, independente das configurações de aprovação.

You can configure this behavior for a repository using the procedure below. Modifying this setting overrides the configuration set at the organization or enterprise level.

  1. No GitHub.com, navegue até a página principal do repositório.

  2. Abaixo do nome do repositório, clique em Configurações. Botão Configurações do repositório

  3. In the left sidebar, click Actions, then click General.

  4. Em Bifurcar fluxos de trabalho de solicitação de pull de colaboradores externos, selecione a sua opção. As opções são listadas das menos restritivas para as mais restritivas.

    Configuração para aprovação de fluxos de trabalho das bifurcações públicas

  5. Clique em Salvar para aplicar as configurações.

Para obter mais informações sobre como aprovar execuções de fluxo de trabalho às quais essa política se aplica, confira "Como aprovar execuções de fluxo de trabalho em forks públicos".

Enabling workflows for forks of private repositories

Se você depender do uso de forks dos seus repositórios privados, configure políticas que controlam como os usuários podem executar fluxos de trabalho em eventos pull_request. Disponível apenas para , você pode configurar essas configurações de política para organizações ou repositórios.

If a policy is disabled for an organization, it cannot be enabled for a repository.

  • Executar fluxos de trabalho por meio de solicitações de pull com fork – Permite que os usuários executem fluxos de trabalho por meio de solicitações de pull com fork usando um GITHUB_TOKEN com permissão somente leitura e sem acesso aos segredos.
  • Enviar tokens de gravação para fluxos de trabalho por meio de solicitações de pull – Permite que as solicitações de pull de forks usem um GITHUB_TOKEN com permissão de gravação.
  • Enviar segredos para fluxos de trabalho por meio de solicitações de pull – Disponibiliza todos os segredos para a solicitação de pull.

Configuring the fork policy for a private repository

  1. No GitHub.com, navegue até a página principal do repositório.
  2. Abaixo do nome do repositório, clique em Configurações. Botão Configurações do repositório
  3. In the left sidebar, click Actions, then click General.
  4. Em Criar fork de fluxos de trabalho de solicitação de pull, selecione suas opções. Por exemplo: Habilitar, desabilitar ou limitar ações para este repositório
  5. Clique em Salvar para aplicar as configurações.

Setting the permissions of the GITHUB_TOKEN for your repository

Você pode definir as permissões padrão concedidas ao GITHUB_TOKEN. Para obter mais informações sobre o GITHUB_TOKEN, confira "Autenticação automática de token". Você pode escolher um conjunto restrito de permissões como padrão ou aplicar configurações permissivas.

The default permissions can also be configured in the organization settings. If your repository belongs to an organization and a more restrictive default has been selected in the organization settings, the same option is selected in your repository settings and the permissive option is disabled.

Qualquer pessoa com acesso de gravação em um repositório pode modificar as permissões concedidas ao GITHUB_TOKEN, adicionando ou removendo o acesso conforme necessário, pela edição da chave permissions no arquivo de fluxo de trabalho. Para obter mais informações, confira permissions.

Configuring the default GITHUB_TOKEN permissions

By default, when you create a new repository in your personal account, GITHUB_TOKEN only has read access for the contents scope. If you create a new repository in an organization, the setting is inherited from what is configured in the organization settings.

  1. No GitHub.com, navegue até a página principal do repositório.

  2. Abaixo do nome do repositório, clique em Configurações. Botão Configurações do repositório

  3. In the left sidebar, click Actions, then click General.

  4. Under "Workflow permissions", choose whether you want the GITHUB_TOKEN to have read and write access for all scopes, or just read access for the contents scope.

    Set GITHUB_TOKEN permissions for this repository

  1. Click Save to apply the settings.

Preventing GitHub Actions from creating or approving pull requests

Você pode optar por permitir ou impedir que fluxos de trabalho do GitHub Actions do criem ou aprovem solicitações de pull.

By default, when you create a new repository in your personal account, workflows are not allowed to create or approve pull requests. If you create a new repository in an organization, the setting is inherited from what is configured in the organization settings.

  1. No GitHub.com, navegue até a página principal do repositório.

  2. Abaixo do nome do repositório, clique em Configurações. Botão Configurações do repositório

  3. In the left sidebar, click Actions, then click General.

  4. Under "Workflow permissions", use the Allow GitHub Actions to create and approve pull requests setting to configure whether GITHUB_TOKEN can create and approve pull requests.

    Set GITHUB_TOKEN permissions for this repository

  5. Click Save to apply the settings.

Configuring the retention period for GitHub Actions artifacts and logs in your repository

You can configure the retention period for GitHub Actions artifacts and logs in your repository.

Por padrão, os artefatos e arquivos de registro gerados pelos fluxos de trabalho são mantidos por 90 dias antes de ser excluídos automaticamente. É possível ajustar o período de retenção dependendo do tipo de repositório:

  • Para repositórios públicos: você pode alterar este período de retenção para qualquer lugar entre 1 dia e 90 dias.
  • Para repositórios privados: você pode alterar esse período de retenção para um valor entre 1 dia ou 400 dias.

Ao personalizar o período de retenção, ele só se aplica a novos artefatos e arquivos de registro e não se aplica retroativamente aos objetos existentes. Para repositórios e organizações gerenciadas, o período máximo de retenção não pode exceder o limite definido pela organização gerenciadora ou pela empresa.

You can also define a custom retention period for a specific artifact created by a workflow. For more information, see "Setting the retention period for an artifact."

Setting the retention period for a repository

  1. No GitHub.com, navegue até a página principal do repositório.
  2. Abaixo do nome do repositório, clique em Configurações. Botão Configurações do repositório
  3. In the left sidebar, click Actions, then click General.
  4. Em Artefato e retenção de log, insira um novo valor.
  5. Clique em Salvar para aplicar a alteração.