Connettiti a un repository Git di terze parti

Questo documento mostra come collegare un repository Dataform a un un repository Git remoto di terze parti.

Dopo aver collegato i repository, le modifiche apportate in una È possibile eseguire il push e il pull dell'area di lavoro di sviluppo Dataform repository Git remoto.

Puoi collegare un repository Dataform a un repository Git remoto ospitato dal seguenti provider Git:

  • Azure DevOps Services

  • Bitbucket

  • GitHub

  • GitLab

Per collegare un repository remoto di terze parti a un repository Dataform: devi prima autenticarlo. Puoi autenticare un repository remoto in tramite HTTPS o SSH.

Per i repository remoti GitHub e GitLab, puoi utilizzare HTTPS o SSH autenticazione. Per Azure DevOps Services e i repository remoti di Bitbucket, devi utilizzare SSH.

Prima di iniziare

Se non l'hai già fatto, crea un repository Dataform. Ti servirà in un secondo momento per condividere un secret con il tuo account di servizio Dataform.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per collegare un repository Dataform a un repository Git remoto, chiedi all'amministratore di concederti Ruolo IAM Amministratore Dataform (roles/dataform.admin) nei repository. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

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

Autentica un repository remoto tramite HTTPS

Puoi autenticare i repository GitHub e GitLab tramite HTTPS creando un Secret Manager con un token di accesso personale e condivisione con il tuo account di servizio Dataform.

Dataform utilizza quindi il token di accesso per accedere al tuo provider Git di eseguire il commit delle modifiche per conto degli sviluppatori. Dataform rende questi si impegna a utilizzare l'indirizzo email Google Cloud dello sviluppatore per indicare chi ha eseguito ogni commit.

Per autenticare un repository GitHub, crea un'istanza token di accesso personale classico o un token di accesso personale granulare che ti consente di personalizzare le autorizzazioni dei token.

Per autenticare un repository GitLab, crea un token di accesso personale classico.

Per autenticare un repository GitHub o GitLab in Dataform tramite HTTPS, segui questi passaggi:

  1. In GitHub o GitLab, crea un token di accesso personale.

  2. Quando crei un token di accesso personale di GitHub, segui questi passaggi:

    1. Concedi a Dataform l'autorizzazione repo.

    2. Assicurati di impostare una scadenza del token appropriata per le tue esigenze.

    3. Se la tua organizzazione utilizza il servizio Single Sign-On (SSO) basato su SAML, autorizzare il token.

  3. (Facoltativo) Quando crei un GitHub token di accesso personale granulare, segui questi passaggi:

    1. Seleziona l'accesso al repository solo ai repository selezionati, quindi seleziona il al repository a cui vuoi connetterti.

    2. Concedi l'accesso in lettura e scrittura ai contenuti del repository.

    3. Assicurati di impostare una scadenza del token appropriata per le tue esigenze.

    4. Se la tua organizzazione utilizza il servizio Single Sign-On (SSO) basato su SAML, autorizzare il token.

  4. Quando crei un token di accesso personale di GitHub, segui questi passaggi:

    1. Assegna al token il nome dataform.

      Il token di accesso personale di GitLab deve essere denominato dataform.

    2. Concedi a Dataform api, read_repository, e write_repository autorizzazioni.

    3. Assicurati di impostare una scadenza del token appropriata per le tue esigenze.

  5. In Secret Manager, crea un secret contenente un token di accesso personale per la connessione al tuo provider Git.

  6. Concedi l'accesso al secret per il tuo account di servizio Dataform.

    Il tuo account di servizio Dataform è nel formato seguente:

    service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
    
    1. Quando concedi l'accesso, assicurati di concedere alla classe roles/secretmanager.secretAccessor al tuo account di servizio Dataform.

Dataform utilizza il token di accesso per accedere al tuo provider Git di eseguire il commit delle modifiche per conto degli sviluppatori. Dataform rende questi si impegna a utilizzare l'indirizzo email Google Cloud dello sviluppatore per indicare chi ha eseguito ogni commit.

Autentica un repository remoto mediante SSH

Puoi autenticare Azure DevOps Services, Bitbucket, GitHub e GitLab mediante SSH mediante la generazione di una chiave SSH e di un il secret.

La chiave SSH è composta da una chiave SSH pubblica e una chiave SSH privata. Devi condividere la chiave SSH pubblica con il tuo provider Git e creare Secret di Secret Manager con chiave SSH privata. Quindi, condividi il secret con il tuo account di servizio Dataform.

Dataform utilizza il secret con la chiave SSH privata per accedere al tuo Git di eseguire il commit delle modifiche per conto degli sviluppatori. Dataform rende questi commit utilizzando l'indirizzo email Google Cloud dello sviluppatore, in modo che chi ha eseguito ogni commit.

autentica un repository Azure DevOps Services, Bitbucket, GitHub o GitLab in Dataform tramite SSH, segui questi passaggi:

  1. In Azure DevOps Services, Bitbucket, GitHub o GitLab, crea una chiave SSH.

  2. Carica la chiave SSH pubblica nel tuo account Git di terze parti.

  3. In Secret Manager, crea un secret con la chiave SSH privata come valore secret.

  4. Concedi l'accesso al secret per il tuo account di servizio Dataform.

    Il tuo account di servizio Dataform è nel formato seguente:

    service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
    
    1. Quando concedi l'accesso, assicurati di concedere alla classe roles/secretmanager.secretAccessor al tuo account di servizio Dataform.

Connetti un repository Dataform

Per collegare un repository Dataform a un repository Git remoto: questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Dataform.

    Vai a Dataform

  2. Seleziona il repository che vuoi connettere.

  3. Nella pagina del repository, fai clic su Impostazioni > Connettiti a Git.

  4. Nel riquadro Collega al repository remoto, nella Nel campo URL repository Git remoto, inserisci l'URL del repository Git remoto che termina con .git.

    Per l'autenticazione HTTPS, l'URL del repository Git remoto non può contenere nomi utente o password.

    Per l'autenticazione SSH, l'URL del repository Git remoto deve essere in uno dei i seguenti formati:

    • URL assoluto: ssh://git@{host_name}[:{port}]/{repository_path}, Il campo port è facoltativo.
    • URL simile a SCP: git@{host_name}:{repository_path}.
  5. Nel campo Nome ramo remoto predefinito, inserisci il nome del ramo di sviluppo principale del repository Git remoto.

  6. Nel menu a discesa Secret, seleziona il tuo secret per il Git remoto repository Git.

  7. Se hai utilizzato l'autenticazione SSH per il repository remoto, nel Valore chiave host pubblica SSH, inserisci una singola chiave host pubblica del tuo del tuo provider Git.

    Il valore della chiave host pubblica SSH deve essere nel formato di un file known_hosts. Il valore deve contenere un algoritmo e una chiave pubblica codificata nel Formato base64, ma senza nome host o IP, nel seguente formato:

      ALGORITHM BASE64_KEY_VALUE
    
    • Per la chiave dell'host pubblico di Azure DevOps Services, esegui il comando ssh-keyscan -t rsa ssh.dev.azure.com nel terminale.

    • Per la chiave host pubblica di Bitbucket, consulta l'articolo Configurare SSH.

    • Per la chiave dell'host pubblico di GitHub, consulta la pagina relativa alle fingerprint della chiave SSH di GitHub.

    • Per la chiave host pubblica di GitLab, consulta le voci SSH known_hosts.

  8. Fai clic su Link.

Modifica la connessione al repository remoto

Per modificare una connessione tra un repository Dataform e un repository Git, segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Dataform.

    Vai a Dataform

  2. Fai clic sul repository che vuoi modificare.

  3. Nella pagina del repository, fai clic su Impostazioni > Modifica connessione Git.

  4. Nel riquadro Collega al repository remoto, modifica uno dei seguenti elementi opzioni:

    1. Nel campo URL repository Git remoto, modifica l'URL del repository Git remoto.

      L'URL del repository Git remoto non può contenere nomi utente o password.

    2. Nel campo Nome ramo remoto predefinito, modifica il nome del ramo di sviluppo principale del repository Git remoto.

    3. Nel menu a discesa Secret, seleziona il tuo secret per il Git remoto repository Git.

    4. Se hai utilizzato l'autenticazione SSH per il repository remoto, nel Valore chiave host pubblica SSH, inserisci la chiave host pubblica del del tuo provider Git.

      Il valore della chiave host pubblica SSH deve essere nel formato di un file host noto. Il valore deve contenere un algoritmo e una chiave pubblica codificata nel Formato base64, ma senza nome host o IP, nel seguente formato:

       ALGORITHM BASE64_KEY_VALUE
      
  5. Fai clic su Aggiorna.

Passaggi successivi