Como criar repositórios do GitHub Enterprise

O Cloud Build permite criar gatilhos em uma instância do GitHub Enterprise. Nesta página, explicamos como usar os gatilhos do GitHub Enterprise para invocar builds em resposta a confirmações ou solicitações de envio de uma instância do GitHub Enterprise.

Antes de começar

  • Ative as APIs Cloud Build and Secret Manager.

    Ative as APIs

Como criar um gatilho do GitHub Enterprise

Nesta seção, explicamos como criar um gatilho e vinculá-lo à instalação do GitHub Enterprise. Se você quiser usar gatilhos do GitHub Enterprise em uma rede privada, consulte Como criar repositórios do GitHub Enterprise em uma rede privada para mais instruções.

Console

Para saber como criar gatilhos usando os gatilhos do GitHub, consulte Como criar gatilhos do GitHub.

API

O modelo JSON a seguir mostra como criar gatilhos por meio da linha de comando:

  {
      "filename": "cloudbuild.yaml",
      "name": "trigger-name",
      "description": "trigger-description",
      "github": {
          "push": {
              "branch": ".*",
          },
          "owner": "owner",
          "name": "repo-name",
      "enterprise_config_resource_name": "projects/project-number/githubEnterpriseConfigs/id"
      },
      "include_build_logs": "INCLUDE_BUILD_LOGS_WITH_STATUS"
  }

Em que:

  • trigger-name é o nome do gatilho;
  • trigger-description é uma descrição do acionador.
  • owner é o proprietário do repositório do GitHub.
  • repo-name é o nome do repositório do GitHub.
  • project-number é o número do projeto do Cloud.
  • id é o ID do GitHubEnterpriseConfig.
  • [OPCIONAL] _include_build_logs é um campo que pode ser especificado para mostrar os registros de build dos seus repositórios. Essa sinalização é compatível com builds dos repositórios do GitHub e do GitHub Enterprise.

Digite o seguinte comando curl no seu terminal, em que project-id é o ID do projeto do Cloud:

  curl -X POST -H "Authorization: Bearer "$(gcloud auth print-access-token) -H "Content-Type: application/json; charset=utf-8" https://cloudbuild.googleapis.com/v1/projects/project-id/triggers -d @trigger.json

Seu gatilho foi criado.

Compartilhamento de dados

Os dados enviados ao GitHub Enterprise pelo Cloud Build ajudam a identificar gatilhos por nome e ver os resultados do build no GitHub Enterprise.

Os dados a seguir estão compartilhados entre o Cloud Build e o GitHub Enterprise:

  • Código do projeto do Cloud
  • Nome do gatilho
  • registros de compilações.

Se você criou gatilhos antes de agosto de 2020, talvez o compartilhamento de dados não esteja ativado para seu projeto. É possível ativar o compartilhamento de dados para todos os gatilhos do GitHub Enterprise no seu projeto clicando em Ativar na guia "Compartilhamento de dados" do Cloud Build.

Se você tiver ativado as verificações de status para um repositório do GitHub Enterprise, a ativação do compartilhamento de dados poderá interromper temporariamente as verificações de status. Para ajustar as configurações de verificação de status para procurar seu nome de gatilho, é possível:

  • desativar qualquer verificação necessária específica do Cloud Build no repositório do GitHub;
  • garantir que o compartilhamento de dados esteja ativado no Cloud Build;
  • executar uma nova compilação no Cloud Build que publica o status no seu repositório;
  • reativar verificações de status necessárias, selecionando o nome do gatilho.

Próximas etapas