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:
In GitHub o GitLab, crea un token di accesso personale.
Quando crei un token di accesso personale di GitHub, segui questi passaggi:
Concedi a Dataform l'autorizzazione
repo
.Assicurati di impostare una scadenza del token appropriata per le tue esigenze.
Se la tua organizzazione utilizza il servizio Single Sign-On (SSO) basato su SAML, autorizzare il token.
(Facoltativo) Quando crei un GitHub token di accesso personale granulare, segui questi passaggi:
Seleziona l'accesso al repository solo ai repository selezionati, quindi seleziona il al repository a cui vuoi connetterti.
Concedi l'accesso in lettura e scrittura ai contenuti del repository.
Assicurati di impostare una scadenza del token appropriata per le tue esigenze.
Se la tua organizzazione utilizza il servizio Single Sign-On (SSO) basato su SAML, autorizzare il token.
Quando crei un token di accesso personale di GitHub, segui questi passaggi:
Assegna al token il nome
dataform
.Il token di accesso personale di GitLab deve essere denominato
dataform
.Concedi a Dataform
api
,read_repository
, ewrite_repository
autorizzazioni.Assicurati di impostare una scadenza del token appropriata per le tue esigenze.
In Secret Manager, crea un secret contenente un token di accesso personale per la connessione al tuo provider Git.
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
- Quando concedi l'accesso, assicurati di concedere alla classe
roles/secretmanager.secretAccessor
al tuo account di servizio Dataform.
- Quando concedi l'accesso, assicurati di concedere alla classe
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:
In Azure DevOps Services, Bitbucket, GitHub o GitLab, crea una chiave SSH.
Per istruzioni su come creare una chiave SSH di Azure DevOps Services, consulta Utilizzare l'autenticazione con chiave SSH.
Per le istruzioni su come creare una chiave SSH Bitbucket, consulta Configurare SSH.
Per le istruzioni sulla creazione di una chiave SSH GitHub, consulta Generare una nuova chiave SSH.
Per le istruzioni su come creare una chiave SSH GitLab, consulta Generare una coppia di chiavi SSH.
Carica la chiave SSH pubblica nel tuo account Git di terze parti.
Per istruzioni su come caricare una chiave SSH pubblica in Azure DevOps Services, consulta Utilizzare l'autenticazione con chiave SSH.
Per le istruzioni su come caricare una chiave SSH pubblica in Bitbucket, consulta l'articolo Configurare SSH.
Per le istruzioni su come caricare una chiave SSH pubblica in GitHub, consulta la sezione su come aggiungere una nuova chiave SSH all'account GitHub.
Per istruzioni su come caricare una chiave SSH pubblica in GitLab, vedi Aggiungere una chiave SSH all'account GitLab.
In Secret Manager, crea un secret con la chiave SSH privata come valore secret.
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
- Quando concedi l'accesso, assicurati di concedere alla classe
roles/secretmanager.secretAccessor
al tuo account di servizio Dataform.
- Quando concedi l'accesso, assicurati di concedere alla classe
Connetti un repository Dataform
Per collegare un repository Dataform a un repository Git remoto: questi passaggi:
Nella console Google Cloud, vai alla pagina Dataform.
Seleziona il repository che vuoi connettere.
Nella pagina del repository, fai clic su Impostazioni > Connettiti a Git.
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 campoport
è facoltativo. - URL simile a SCP:
git@{host_name}:{repository_path}
.
- URL assoluto:
Nel campo Nome ramo remoto predefinito, inserisci il nome del ramo di sviluppo principale del repository Git remoto.
Nel menu a discesa Secret, seleziona il tuo secret per il Git remoto repository Git.
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 Formatobase64
, 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
.
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:
Nella console Google Cloud, vai alla pagina Dataform.
Fai clic sul repository che vuoi modificare.
Nella pagina del repository, fai clic su Impostazioni > Modifica connessione Git.
Nel riquadro Collega al repository remoto, modifica uno dei seguenti elementi opzioni:
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.
Nel campo Nome ramo remoto predefinito, modifica il nome del ramo di sviluppo principale del repository Git remoto.
Nel menu a discesa Secret, seleziona il tuo secret per il Git remoto repository Git.
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
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
.
Fai clic su Aggiorna.
Passaggi successivi
Per scoprire di più sui repository Dataform, vedi Introduzione ai repository.
Per creare un'area di lavoro di sviluppo, consulta Crea uno spazio di lavoro.
Per scoprire di più su Dataform, consulta Panoramica di Dataform.