Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Esta versão do GitHub Enterprise foi descontinuada em 2022-06-03. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, melhorar a segurança e novos recursos, upgrade to the latest version of GitHub Enterprise. Para ajuda com a atualização, contact GitHub Enterprise support.

Sincronização manual de ações do GitHub.com

Para usuários que precisam acessar as ações a partir de GitHub.com, você pode sincronizar ações específicas para sua empresa.

Observação: Executores hospedados em GitHub não são atualmente compatíveis com GitHub Enterprise Server. Você pode ver mais informações sobre suporte futuro planejado no Itinerário público do GitHub.

GitHub Actions em GitHub Enterprise Server foi projetado para funcionar em ambientes sem acesso total �  internet. Por padrão, os fluxos de trabalho não podem usar ações de GitHub.com e GitHub Marketplace.

A abordagem recomendada de habilitar o acesso a ações a partir de GitHub.com é permitir o acesso automático para todas as ações. Você pode fazer isso usando GitHub Connect para integrar GitHub Enterprise Server com GitHub Enterprise Cloud. Para obter mais informações, consulte "Habilitar o acesso automático � s ações de GitHub.com usando o GitHub Connect".

No entanto, se você quiser um controle mais rigoroso sobre quais as ações são permitidas na sua empresa, você poderá seguir este guia para usar a ferramenta de código aberto de GitHub ação-sincronização para sincronizar repositórios de ações individuais de GitHub.com para a sua empresa.

Sobre a ferramenta actions-sync

A ferramenta actions-sync deve ser executada em uma máquina que pode acessar a API de GitHub.com e sua API da instância do GitHub Enterprise Server. A máquina não precisa estar conectada a ambos ao mesmo tempo.

Se sua máquina tiver acesso aos dois sistemas ao mesmo tempo, você poderá fazer a sincronização com um único comando de actions-sync. Se você só puder acessar um sistema de cada vez, pode usar os comandos actions-sync pull e push.

A ferramenta actions-sync só pode fazer download de ações de GitHub.com armazenadas em repositórios públicos.

Pré-requisitos

  • Antes de usar a ferramenta actions-sync, você deve garantir que todas as organizações de destino existem na sua empresa. O exemplo a seguir demonstra como sincronizar ações com uma organização com o nome de synced-actions. Para obter mais informações, consulte "Criar uma nova organização do zero".

  • Você deve criar um token de acesso pessoal (PAT) na sua empresa que pode criar e gravar em repositórios nas organizações de destino. Para obter mais informações, consulteCriando um token de acesso pessoal."

  • Se você deseja sincronizar as ações empacotadas na organização das ações em your GitHub Enterprise Server instance, você deverá ser proprietário da organização das ações.

    Observação: Por padrão, até os administradores do site não são proprietários das ações agrupadas ``.

    Os administradores dos sites podem usar o comando ghe-org-admin-promote no shell administrativo para promover um usuário para ser proprietários da organização das ações empacotadas. Para obter mais informações, consulte "Acessar o shell administrativa (SSH)" e "ghe-org-admin-promote".

    ghe-org-admin-promote -u USERNAME -o actions

Example: Using the actions-sync tool

Este exemplo demonstra o uso da ferramenta actions-sync para sincronizar uma ação individual a partir de GitHub.com para a instância de uma empresa.

Observação: Este exemplo usa o comando actions-sync sync, que exige acesso simultâneo �  API de GitHub.com e �  API da instância empresarial da sua máquina. Se você puder acessar apenas um sistema de cada vez, você poderá usar os comandos actions-sync pull e push. Para obter mais informações, consulte README de actions-sync.

  1. Faça o download e extraia a versão mais recente actions-sync para o sistema operacional da sua máquina.

  2. Crie um diretório para armazenar arquivos de cache para a ferramenta.

  3. Run the actions-sync sync command:

    ./actions-sync sync \
      --cache-dir "cache" \
      --destination-token "aabbccddeeffgg" \
      --destination-url "https://my-ghes-instance" \
      --repo-name "actions/stale:synced-actions/actions-stale"

    O comando acima usa os seguintes argumentos:

    • --cache-dir: O diretório de cache na máquina que está executando o comando.

    • --destination-token: Um token de acesso pessoal para a instância empresarial de destino.

    • --destination-url: A URL da instância empresarial de destino.

    • --repo-name: O repositório da ação a ser sincronizado. Ele aceita o formato de owner/repository:destination_owner/destination_repository.

      • O exemplo acima sincroniza o repositório actions/stale com o repositório synced-actions/actions-stale na instância corporativa de destino. Você deve criar a organização denominada synced-actions na sua empresa antes de executar o comando acima.
      • Se você omitir :destination_owner/destination_repository, a ferramenta usará o proprietário original e o nome do repositório para a sua empresa. Antes de executar o comando, você deve criar uma nova organização em sua empresa que corresponda ao nome da ação do proprietário. Considere usar uma organização central para armazenar as ações sincronizadas na sua empresa, uma vez que isso significa que você não precisará criar várias novas organizações se sincronizar ações de diferentes proprietários.
      • Você pode sincronizar várias ações substituindo o parâmetro --repo-name por --repo-name-list ou --repo-name-list-file. Para obter mais informações, consulte o README de actions-sync.
  4. Depois que o repositório de ação for criado na sua empresa, as pessoas da sua empresa poderão usar o repositório de destino para fazer referência �  ação nos fluxos de trabalho. Para o exemplo da ação mostrado acima:

    uses: synced-actions/actions-stale@v1
    

    Para obter mais informações, consulte "Sintaxe do fluxo de trabalho para o GitHub Actions".