Creazione di repository da GitHub Enterprise

Cloud Build ti consente di creare trigger su un'istanza GitHub Enterprise. Questa pagina spiega come utilizzare i trigger di GitHub Enterprise per richiamare le build in risposta ai commit o alle richieste di pull da un'istanza GitHub Enterprise.

Prima di iniziare

  • Abilita le API Cloud Build and Secret Manager.

    Abilita le API

Creazione di un trigger di GitHub Enterprise

Questa sezione spiega come creare un trigger e collegarlo all'installazione di GitHub Enterprise. Se vuoi utilizzare i trigger di GitHub Enterprise in una rete privata, consulta la sezione Creare repository da GitHub Enterprise in una rete privata per ulteriori istruzioni.

console

Per informazioni su come creare trigger utilizzando i trigger di GitHub, consulta la sezione Creazione di trigger di GitHub.

Server

Il seguente modello JSON mostra come creare trigger tramite la riga di 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"
  }

Dove:

  • trigger-name è il nome dell'attivatore
  • trigger-description è una descrizione per l'attivatore
  • owner è il proprietario del repository di GitHub.
  • repo-name è il nome del repository di GitHub.
  • project-number è il numero del progetto Cloud.
  • id è l'ID di GitHubEnterpriseConfig.
  • [FACOLTATIVO] _include_build_logs è un campo che puoi specificare per mostrare i log di build per i tuoi repository. Questo flag è supportato per le build da repository GitHub e GitHub Enterprise.

Inserisci il seguente comando curl nel tuo terminale, dove project-id è l'ID progetto 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

L'attivatore è stato creato.

Condivisione dei dati

I dati inviati a GitHub Enterprise da Cloud Build ti aiutano a identificare i trigger per nome e a visualizzare i risultati della build su GitHub Enterprise.

I seguenti dati sono attualmente condivisi tra Cloud Build e GitHub Enterprise:

  • ID progetto Cloud
  • Nome trigger
  • Log di build

Se hai creato trigger prima di agosto 2020, la condivisione dei dati potrebbe non essere abilitata per il tuo progetto. Puoi abilitare la condivisione dei dati per tutti i trigger di GitHub Enterprise nel progetto facendo clic su Abilita nella scheda Condivisione dei dati di Cloud Build.

Se hai abilitato i controlli di stato obbligatori per un repository GitHub Enterprise, l'attivazione della condivisione dei dati potrebbe interrompere temporaneamente i controlli di stato. Puoi regolare le configurazioni dei controlli di stato per cercare il nome del trigger per:

  • Disabilitazione di tutti i controlli obbligatori specifici di Cloud Build sul repository GitHub
  • Garantire che la condivisione dei dati sia abilitata in Cloud Build
  • Esecuzione di una nuova build in Cloud Build, che pubblica gli stati nel repository
  • Riattivazione dei controlli di stato richiesti con selezione del nome dell'attivatore

Passaggi successivi