Connettiti a GitHub Enterprise

Questa pagina descrive come creare connessioni a GitHub Enterprise e link ai repository GitHub Enterprise. Puoi completare queste attività utilizzando la Google Cloud console, o Google Cloud CLI.

Queste istruzioni sono destinate a sviluppatori di applicazioni, amministratori di piattaforme e responsabili della sicurezza che vogliono utilizzare i repository di codice sorgente GitHub Enterprise con Google. In particolare, puoi utilizzare i repository GitHub Enterprise con Gemini Code Assist.

Per saperne di più su Developer Connect, consulta la panoramica di Developer Connect.

Prima di iniziare

  1. Accedi al tuo Account Google.

    Se non ne hai già uno, registrati per creare un nuovo account.

  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. L'abilitazione di Developer Connect abilita anche l' API Secret Manager.

  9. Assicurati di avere accesso a un account su GitHub Enterprise.

    Per proteggere il lavoro del tuo team, ti consigliamo di completare le attività descritte in questa guida utilizzando un account bot o un account condiviso dal tuo team, non un account personale.

  10. Assicurati di essere il proprietario di un repository GitHub Enterprise o di disporre delle autorizzazioni a livello di amministratore su un repository condiviso.
  11. Quando utilizzi un repository in un'organizzazione GitHub Enterprise, assicurati di disporre delle autorizzazioni di amministratore dell'app GitHub.

  12. (Facoltativo) Crea una chiave di crittografia gestita dal cliente (CMEK) per criptare i secret di autenticazione creati da Developer Connect.
  13. (Facoltativo) Per utilizzare le istruzioni della riga di comando in questa guida, completa i seguenti passaggi:
    1. Installa la Google Cloud CLI. Se hai già installato gcloud CLI, assicurati di avere l'ultima versione disponibile eseguendo gcloud components update.
    2. Crea un account di servizio Developer Connect eseguendo il seguente comando, dove PROJECT_ID è l'Google Cloud ID progetto:
              gcloud beta services identity create \
                  --service=developerconnect.googleapis.com \
                  --project=PROJECT_ID
              

Concedi le autorizzazioni IAM richieste

Per ottenere le autorizzazioni necessarie per creare connessioni e link, chiedi all'amministratore di concederti i seguenti ruoli IAM:

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Crea una connessione

Questa sezione descrive come creare una connessione tra Developer Connect e GitHub Enterprise. Se utilizzi la Google Cloud console, puoi anche iniziare ad aggiungere link ai repository al termine della configurazione della connessione.

Per creare una nuova connessione GitHub Enterprise, seleziona una delle seguenti opzioni:

Console

Avvia una connessione completando i seguenti passaggi:

  1. Nella Google Cloud console, apri Developer Connect.

    Vai a Developer Connect

    Developer Connect visualizza la pagina Repository Git.

    • Se vedi un elenco di provider di gestione del codice sorgente: inizia a configurare la prima connessione selezionando un provider di gestione del codice sorgente. Fai clic su Connetti nella scheda GitHub Enterprise.
    • Se vedi una tabella che elenca le connessioni esistenti: imposta il provider di gestione del codice sorgente facendo clic su Crea connessione > GitHub Enterprise.

      Si apre la pagina Crea connessione.

  2. In Regione, scegli una regione per le risorse di connessione.

    1. In Nome, inserisci un nome per la nuova connessione.
  3. Attiva la casella di controllo Abilita una connessione conforme alla residenza dei dati per rendere questa connessione conforme ai requisiti di residenza dei dati.

    Le connessioni GitHub create utilizzando la Google Cloud console sono conformi alla residenza dei dati se attivi questa casella di controllo quando crei la connessione. In questo caso, Developer Connect crea un'app GitHub.

    Quando crei connessioni GitHub utilizzando Google Cloud CLI, queste connessioni non sono conformi alla residenza dei dati. Tutti gli altri tipi di connessione sono conformi alla residenza dei dati.

    1. In URL host, inserisci l'URL dell'host a cui vuoi connetterti.
  4. Fai clic su Mostra altro per visualizzare le impostazioni di configurazione facoltative.

    1. (Facoltativo) Per impostazione predefinita, Developer Connect può fungere da proxy per le chiamate Git a GitHub Enterprise. Per disattivare questa opzione, deseleziona la casella di controllo Abilita proxy Developer Connect.

    2. In Tipo di rete, seleziona Internet pubblico.

      Se vuoi utilizzare una rete privata, consulta Connettersi ai repository GitHub Enterprise ospitati in una rete privata.

    3. (Facoltativo) Nella sezione Crittografia, seleziona una chiave CMEK per criptare i secret di Secret Manager creati da Developer Connect.

  5. Fai clic su Continua.

    Viene visualizzata una finestra di dialogo di GitHub che ti invita a creare un'app GitHub.

  6. Segui le istruzioni di GitHub e completa queste attività:

    1. Inserisci un nome per l'app.

    2. Scegli l'organizzazione in cui vuoi installare l'app.

    3. Seleziona i repository a cui vuoi concedere l'accesso.

    La finestra di dialogo si chiude.

    Developer Connect recupera la chiave privata da GitHub e archivia nel tuo Google Cloud progetto come secret di Secret Manager. Per visualizzare i secret, elencali in Secret Manager.

Una volta creata la connessione, viene visualizzata la pagina Collega repository.

Completa i seguenti passaggi per collegare i repository alla connessione:

  1. Nell'elenco dei repository disponibili, seleziona quelli che vuoi utilizzare.

  2. Fai clic su OK.

  3. Fai clic su Collega.

La connessione viene aggiunta alla pagina Connessioni e i link ai repository vengono aggiunti alla pagina Repository nella Google Cloud console. Puoi aggiungere altri link alle connessioni esistenti in qualsiasi momento.

Se stai configurando Gemini Code Assist, continua la procedura seguendo i passaggi descritti in Configurare e utilizzare la personalizzazione del codice di Gemini Code Assist.

gcloud

Le seguenti attività richiedono alcune azioni nel browser web.

Avvia una connessione completando i seguenti passaggi:

  1. Esegui il gcloud developer-connect connections create comando per creare una connessione a GitHub Enterprise:

    gcloud developer-connect connections create CONNECTION_NAME \
        --location=REGION \
        --github-enterprise-config-host-uri=HOST_URI
        --git-proxy-config-enabled
    

    Sostituisci quanto segue:

    • CONNECTION_NAME: il nome della connessione.
    • REGION: la regione della connessione.
    • HOST_URI: l'URI dell'host a cui vuoi connetterti.
    • --git-proxy-config-enabled: un flag facoltativo che consente a Developer Connect di fungere da proxy per le chiamate Git a GitHub Enterprise. Questa funzionalità è in anteprima.
  2. Devi creare un'app GitHub per gestire le connessioni con GitHub. Esegui il seguente comando per ottenere l'URI per la configurazione dell'app:

    gcloud developer-connect connections describe CONNECTION_NAME \
        --location=REGION
    

    Sostituisci quanto segue:

    • CONNECTION_NAME: il nome della connessione.
    • REGION: la regione della connessione.

    Developer Connect restituisce un link per completare i passaggi successivi in una finestra del browser. Copia questo link.

  3. Apri il link in un browser web.

  4. Se ti viene richiesto, accedi al tuo account GitHub.

  5. Segui le istruzioni di GitHub e completa queste attività:

    1. Inserisci un nome per l'app.

    2. Scegli l'organizzazione in cui vuoi installare l'app.

    3. Seleziona i repository a cui vuoi concedere l'accesso.

    La finestra di dialogo si chiude.

    Developer Connect recupera la chiave privata da GitHub e archivia nel tuo Google Cloud progetto come secret di Secret Manager. Per visualizzare i secret, elencali in Secret Manager.

Verificare la connessione

Verifica la creazione della connessione GitHub eseguendo il seguente comando:

gcloud developer-connect connections describe CONNECTION_NAME \
    --location=REGION

Dove:

  • CONNECTION_NAME: il nome della connessione.
  • REGION: la regione della connessione.

Developer Connect restituisce uno stato nel campo installationState. Se il valore di questo campo è COMPLETE, l'installazione dell'app è terminata. In caso contrario, Developer Connect restituisce un URI per tornare alla configurazione nel browser.

Una volta completata la connessione, scegli i repository da collegare seguendo le istruzioni riportate in Collegare i repository.

Una volta stabilita una connessione a GitHub Enterprise, puoi collegare i repository. Puoi ripetere questi passaggi in un secondo momento per collegare altri repository, se necessario.

Per creare link ai repository su una connessione GitHub Enterprise esistente, seleziona una delle seguenti opzioni:

Console

  1. Apri la pagina Repository nella Google Cloud console.

    Apri la pagina Repository

  2. Fai clic su Collega repository.

    Si apre il riquadro Collega repository Git.

  3. Nell'elenco delle connessioni, scegli una connessione.

  4. Fai clic su Continua.

  5. Nell'elenco dei repository, seleziona quelli a cui vuoi collegarti.

  6. Fai clic su Crea.

Developer Connect crea i link ai repository e li visualizza in the Google Cloud console.

gcloud

Esegui questo comando:

gcloud developer-connect connections git-repository-links create REPO_NAME \
    --clone-uri=REPO_URI \
    --connection=CONNECTION_NAME \
    --location=REGION

Sostituisci quanto segue:

  • REPO_NAME: un nome per il link al repository.
  • REPO_URI: il link al repository. Ad esempio, https://github.com/cloud-build/test-repo.git.
  • CONNECTION_NAME: il nome della connessione.
  • REGION: la regione della connessione.

Developer Connect crea i link ai repository.

Per elencare i repository collegati, esegui il developer-connect connections git-repository-links list comando.

Se stai configurando Gemini Code Assist, continua la procedura seguendo i passaggi descritti in Configurare e utilizzare la personalizzazione del codice di Gemini Code Assist.

Condivisione dei dati

I contenuti delle risorse collegate a questa connessione potrebbero essere trasferiti a GitHub. Google Cloud Questa affermazione si applica a tutte le risorse esistenti e future che utilizzano questa connessione. Per interrompere la condivisione delle informazioni con GitHub, elimina le connessioni Developer Connect nella console o in gcloud CLI e revoca l'accesso in GitHub. Google Cloud

Passaggi successivi