Connettiti a GitLab

Questa pagina descrive come creare connessioni a GitLab e link ai repository GitLab. 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 GitLab con Google. In particolare, puoi utilizzare i repository GitLab con Gemini Code Assist.

Per scoprire 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 GitLab.

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

  10. Assicurati di essere il proprietario di un repository GitLab o di disporre delle autorizzazioni a livello di amministratore su un repository condiviso.
  11. (Facoltativo) Crea una chiave di crittografia gestita dal cliente (CMEK) per criptare i secret di autenticazione creati da Developer Connect.
  12. (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 service account 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
              

Ruoli obbligatori

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.

Creare token di accesso

Per creare token di accesso in GitLab, completa i seguenti passaggi:

  1. Accedi a GitLab.

  2. Segui le istruzioni nella documentazione di GitLab per creare token di accesso personale, token di accesso di gruppo, o token di accesso al progetto con le seguenti autorizzazioni:

    • Un token con ambito api per collegare e scollegare i repository.
    • Un token con ambito read_api per consentire a Developer Connect di leggere il codice sorgente nei repository.
    • Per i token di accesso di gruppo e i token di accesso al progetto, i token devono avere un ruolo di Maintainer o superiore.

Creare una connessione

Questa sezione descrive come creare una connessione tra Developer Connect e GitLab. 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 GitLab, 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 mostra 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 Collega nella scheda GitLab.
    • Se vedi una tabella che elenca le connessioni esistenti: imposta il provider di gestione del codice sorgente facendo clic su Crea connessione > GitLab.

      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. Nella sezione Token di accesso, inserisci i token per il tuo account:

    • Token di accesso all'API: inserisci il token di accesso con ambito api.
    • Token di accesso alle API in lettura: inserisci il token di accesso con read_api ambito.

    È tua responsabilità assicurarti che i token GitLab rimangano validi. I token GitLab hanno una durata massima di 365 giorni, se non diversamente specificato dal creatore del token o da un amministratore. Per scoprire come gestire le impostazioni e le notifiche di scadenza dei token, consulta la documentazione di GitLab sui token di accesso personale, token di accesso di gruppo, e token di accesso al progetto.

  4. Fai clic su Mostra altro per visualizzare le impostazioni di configurazione facoltative.

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

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

  5. Fai clic su Continua.

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

  1. Crea un secret webhook in Secret Manager eseguendo il seguente comando, dove WEBHOOK_SECRET_NAME è un nome per il secret webhook:

         cat /proc/sys/kernel/random/uuid | tr -d '\n' | gcloud secrets create WEBHOOK_SECRET_NAME
    
  2. Archivia i token di accesso in Secret Manager eseguendo i seguenti comandi:

    gcloud secrets create API_SECRET_NAME
    
    echo -n API_SECRET_DATA | gcloud secrets versions add API_SECRET_NAME --data-file=-
    
    gcloud secrets create READ_SECRET_NAME
    
    echo -n READ_SECRET_DATA | gcloud secrets versions add READ_SECRET_NAME --data-file=-
    

    Sostituisci quanto segue:

    • API_SECRET_NAME: un nome per il secret che memorizza il token con ambito api.
    • API_SECRET_DATA: il token con api ambito, simile a glpat-XXXXXXXXXXXXXXXX.
    • READ_SECRET_NAME: un nome per il secret che memorizza il token con ambito read_api.
    • READ_SECRET_DATA: il token con read_api ambito, simile a glpat-XXXXXXXXXXXXXXXX.
  3. Avvia una connessione al tuo account GitLab eseguendo il developer-connect connections create comando:

    gcloud developer-connect connections create CONNECTION_NAME \
        --location=REGION \
        --gitlab-config-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/API_SECRET_NAME/versions/VERSION \
        --gitlab-config-read-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/READ_SECRET_NAME/versions/VERSION \
        --gitlab-config-webhook-secret-version=projects/PROJECT_ID/secrets/WEBHOOK_SECRET_NAME/versions/VERSION
        --git-proxy-config-enabled
    

    Sostituisci quanto segue:

    • CONNECTION_NAME: un nome per la connessione.
    • REGION: la regione della connessione.
    • PROJECT_NAME: il tuo Google Cloud ID progetto.
    • API_SECRET_NAME: il nome del secret di Secret Manager che contiene il token con ambito api
    • READ_SECRET_NAME: il nome del secret di Secret Manager che contiene il token con ambito read_api.
    • WEBHOOK_SECRET_NAME: il nome del secret di Secret Manager che contiene il secret webhook.
    • VERSION: il numero di versione di ogni secret. Può essere latest per utilizzare il numero di versione più recente.
    • --git-proxy-config-enabled: un flag facoltativo che consente a Developer Connect di fungere da proxy per le chiamate Git a GitLab. Questa funzionalità è in anteprima.

    Developer Connect completa la connessione a GitLab. Poi, collega i repository.

Dopo aver stabilito una connessione a GitLab, 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 GitLab esistente, seleziona una delle seguenti opzioni:

Console

Crea link ai repository completando i seguenti passaggi:

  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.

    Developer Connect mostra i nomi suggeriti per le risorse del repository.

  6. Seleziona un'opzione di denominazione delle risorse del repository:

    • Generato: utilizza i nomi delle risorse del repository generati.
    • Manuale: inserisci i nomi che preferisci.
  7. Fai clic su Crea.

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

gcloud

Collega un repository GitLab eseguendo il seguente 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: il nome del link al repository.
  • REPO_URI: il link al repository, simile a https://gitlab.com/my-project/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.

Passaggi successivi