Questa pagina descrive come configurare gli elementi del progetto da integrare con Git per il controllo della versione.
Impostazioni progetto
Per visualizzare le impostazioni del progetto, apri il progetto e seleziona l'icona Impostazioni dal menu delle icone di Looker IDE.
Da qui puoi accedere a tre schede Impostazioni progetto:
Configurazione
La scheda Configurazione della pagina Impostazioni progetto consente di aprire la pagina Configurazione progetto. Nella pagina Configurazione progetto, puoi configurare le seguenti impostazioni:
- Nome: il nome del progetto. Puoi rinominare il progetto modificando il testo e facendo clic sul pulsante Salva configurazione progetto. Per ulteriori dettagli, consulta la pagina della documentazione Accesso e modifica delle informazioni sul progetto.
Nome ramo di produzione Git: specifica il nome del ramo Git da utilizzare come destinazione dell'unione per i rami di sviluppo del progetto. Il ramo Git deve esistere nel tuo repository Git. Per saperne di più, consulta la sezione Nome ramo produzione Git in questa pagina.
Qualità del codice: determina se richiedere agli sviluppatori di eseguire correttamente lo strumento di convalida LookML sul progetto prima di eseguire qualsiasi modifica al progetto. Qualità del codice offre le seguenti opzioni:
- Richiedi la correzione degli avvisi e degli errori prima di eseguire il commit: gli sviluppatori di Looker possono eseguire il commit delle modifiche solo dopo aver eseguito correttamente lo strumento di convalida LookML e aver risolto tutti gli errori e gli avvisi. Si tratta dell'impostazione consigliata.
- Richiedi la correzione degli errori solo prima di eseguire il commit: gli sviluppatori di Looker possono eseguire il commit delle modifiche solo dopo aver eseguito correttamente lo strumento di convalida LookML e aver risolto tutti gli errori. Gli sviluppatori possono eseguire il commit delle modifiche quando sono presenti avvisi. Sebbene non sia consigliata, questa opzione può essere utile, ad esempio se vengono introdotti nuovi avvisi nel LookML funzionante dopo un aggiornamento di Looker.
- Consenti di eseguire il commit del codice non funzionante: gli sviluppatori di Looker possono eseguire il commit delle modifiche senza eseguire il programma di convalida di LookML e indipendentemente dal fatto che nel codice LookML siano presenti errori o avvisi. Questa opzione è sconsigliata perché può causare il mancato funzionamento di LookML o risultati errati.
Richiedi il superamento dei test sui dati prima del deployment di questo progetto in produzione: se il progetto LookML ha uno o più parametri
test
, questa opzione richiede agli sviluppatori di eseguire i test sui dati prima di eseguire il deployment delle modifiche. Se i test sui dati vengono superati, l'IDE consentirà allo sviluppatore di eseguire il deployment delle modifiche in produzione. Per informazioni su come configurare i test dei dati nel progetto LookML, consulta la pagina della documentazione relativa al parametrotest
. Per informazioni sull'esecuzione di test dei dati nel progetto, consulta la pagina della documentazione Utilizzo del controllo versione e del deployment. Per impostazione predefinita, l'opzione Richiedi il superamento dei test sui dati prima del deployment di questo progetto in produzione è abilitata per i nuovi progetti LookML.Git Integration (Integrazione Git): specifica i livelli di integrazione con il tuo provider Git. Per informazioni dettagliate, consulta Opzioni di integrazione di Git.
Abilita modalità di deployment avanzata: un'impostazione che, se abilitata, consente agli utenti di eseguire il deployment di qualsiasi SHA, tag o ramo in produzione. Per ulteriori informazioni sull'utilizzo del controllo della versione con la modalità di deployment avanzata abilitata, consulta la pagina della documentazione relativa alla modalità di deployment avanzata.
Secret di deployment del webhook: configura l'autenticazione per il deployment delle modifiche in produzione nell'istanza Looker. Per maggiori dettagli, consulta la pagina della documentazione Configurazione del segreto di deployment dell'webhook.
Reimposta connessione Git: questo pulsante apre la finestra Configura Git, in cui puoi aggiornare le impostazioni di connessione per il tuo repository Git.
Il ripristino della connessione Git consente di conservare la cronologia di Git per il ramo principale. Verrà inoltre conservata la cronologia del ramo personale di ogni sviluppatore Looker dopo la sincronizzazione della modalità sviluppatore. Per preservare la cronologia per tutti i rami, consulta la pagina Best practice per la migrazione a un nuovo repository Git.
Elimina progetto: questo pulsante elimina il progetto, rimuovendo tutto il codice LookML dal progetto in tutti gli ambienti di sviluppo e di produzione dell'istanza di Looker.
Riepilogo Git: questa sezione mostra la configurazione Git del progetto e le informazioni sul ramo Git dell'utente corrente.
Nome ramo produzione Git
Con l'integrazione predefinita del Git di Looker, tutti gli sviluppatori di Looker uniscono le loro modifiche in un ramo principale chiamato master
. Puoi utilizzare il campo Nome ramo di produzione Git per specificare il ramo del tuo repository Git che Looker deve utilizzare come ramo di destinazione in cui vengono uniti i rami degli sviluppatori di Looker. (Consulta la pagina della documentazione Utilizzo del controllo della versione e del deployment per il flusso di lavoro Git predefinito e altre opzioni per le implementazioni Git avanzate.)
Per i progetti esistenti, segui questi passaggi prima di modificare il nome del ramo di produzione Git:
- Chiedi a tutti gli sviluppatori del progetto Looker di eseguire il commit delle modifiche e unire i propri rami al ramo di produzione esistente, quindi metti in pausa il lavoro finché il nome del ramo di produzione Git non viene aggiornato e salvato nella configurazione del progetto Looker.
- Se il progetto utilizza richieste di pull integrate, finalizza e unisci tutte le richieste di pull aperte, in base alle necessità.
- Esegui le eventuali preparazioni necessarie sul lato del provider Git, ad esempio creare un nuovo ramo nel repository, rinominare il ramo Git predefinito esistente o eseguire qualsiasi azione necessaria per preparare il ramo in modo che Looker possa utilizzarlo come ramo di destinazione per l'unione. Come minimo, devi verificare che il ramo che vuoi utilizzare sia un ramo esistente nel tuo repository Git.
Per modificare il ramo Git utilizzato dal progetto come destinazione di unione per i rami di sviluppo:
- Seleziona l'icona Impostazioni dal menu delle icone di Looker IDE per visualizzare le impostazioni del progetto. Per impostazione predefinita si apre la scheda Configurazione.
- Nel campo Nome del ramo di produzione Git, inserisci il nome del ramo Git che vuoi utilizzare come ramo di produzione per il progetto Looker.
- Fai clic sul pulsante Salva configurazione progetto per salvare la modifica.
Importa credenziali
Nella sezione Importa credenziali puoi gestire le credenziali di autenticazione per i repository remoti privati. Consulta la sezione sull'importazione di file da altri progetti per maggiori dettagli.
Gestione rami
Nella scheda Gestione dei rami della pagina Impostazioni progetti, puoi vedere tutti i rami Git associati al progetto. Per informazioni dettagliate, consulta la pagina della documentazione Utilizzo del controllo versione e del deployment.
Opzioni di integrazione di Git
Dopo aver configurato la connessione Git, Looker utilizzerà il tuo provider Git per gestire i file di origine LookML, come descritto nella pagina della documentazione Utilizzo del controllo della versione e del deployment.
Se sei un amministratore di Looker, puoi configurare opzioni aggiuntive per l'integrazione di Looker con Git utilizzando le opzioni Integrazione Git nella scheda Configurazione del riquadro delle impostazioni del progetto:
- Off: Looker non mostrerà link esterni all'interfaccia del tuo provider Git.
- Mostra link: Looker fornirà link esterni all'interfaccia del tuo provider Git in modo che gli sviluppatori possano visualizzare il progetto nell'interfaccia del provider. Looker fornirà anche link per ogni file di progetto in modo che gli sviluppatori possano visualizzare la cronologia del file e le informazioni sui blame Git nell'interfaccia del tuo provider Git. Per informazioni sui link, consulta la sezione Integrazione di link esterni al provider Git.
- È consigliabile utilizzare le richieste pull: oltre a fornire link esterni all'interfaccia del tuo provider Git, Looker offre agli sviluppatori la possibilità di inviare una richiesta pull in modo che un altro sviluppatore possa approvare le modifiche prima di aggiungerle al progetto. Per informazioni sulla configurazione, consulta la sezione Integrazione delle richieste di pull per il tuo progetto.
- Pull request obbligatorie: è lo stesso valore di Pull request consigliate, tranne per il fatto che gli sviluppatori LookML sono tenuti ad aprire una pull request per inviare le modifiche al progetto. Per informazioni sulla configurazione, consulta la sezione Integrazione delle richieste di pull per il tuo progetto.
Per salvare le impostazioni di integrazione Git, fai clic su Salva configurazione progetto nella sezione Deployment.
Integrazione di link esterni al provider Git
Se hai attivato una delle opzioni di integrazione Git aggiuntive (Mostra link, Pull request consigliate o Pull request obbligatorie), Looker fornisce link esterni all'interfaccia del tuo provider Git. Questi link esterni aprono una nuova scheda del browser al sito del tuo provider Git.
Per visualizzare questi link esterni, gli sviluppatori devono avere un account presso il tuo provider Git e disporre dell'accesso al repository Git del progetto.
Nel menu Opzioni file con tre puntini per ciascuno dei tuoi file LookML, Looker fornisce i link al sito del tuo provider Git per visualizzare il file, le informazioni di Git blame relative al file e la cronologia dei commit del file.
Nel riquadro Azioni Git, puoi anche utilizzare l'opzione Visualizza progetto su <Git provider>
per aprire i file del progetto sul sito del tuo provider Git.
Integrazione delle richieste di pull per il progetto
Con l'integrazione di Git di Looker predefinita, gli sviluppatori di Looker eseguono il commit delle modifiche nel ramo di sviluppo, quindi uniscono il ramo di sviluppo al ramo di produzione. Poi, quando esegui il deployment nell'ambiente Looker, Looker utilizza l'ultimo commit sul ramo di produzione. (consulta la pagina della documentazione Utilizzo del controllo della versione e del deployment per il flusso di lavoro Git predefinito e altre opzioni per le implementazioni avanzate di Git).
Invece di consentire agli sviluppatori di Looker di unire il ramo di sviluppo al ramo di produzione di Looker, puoi configurare il tuo progetto con l'opzione Richieste di pull consigliate o Richieste di pull richieste:
- Pull request consigliate: dopo che uno sviluppatore ha eseguito il commit delle modifiche al proprio ramo di sviluppo, il pulsante Git nell'IDE di Looker chiede allo sviluppatore di aprire una pull request per unire il ramo di sviluppo al ramo di produzione. Lo sviluppatore può quindi aprire una richiesta di pull che deve essere esaminata e approvata da altri sviluppatori di Looker dall'interfaccia web del provider Git. In alternativa, lo sviluppatore può utilizzare l'opzione Esegui il deployment in produzione nel riquadro Azioni Git per saltare la creazione di una richiesta di pull ed eseguire il deployment delle modifiche in produzione. L'opzione Esegui il deployment in produzione non è disponibile se il progetto è abilitato con la modalità di deployment avanzata.
- Pull request obbligatorie: dopo che uno sviluppatore ha eseguito il commit delle modifiche al proprio ramo di sviluppo, il pulsante Git nell'IDE di Looker chiede allo sviluppatore di aprire una pull request. Lo sviluppatore deve aprire una richiesta di pull per unire il ramo di sviluppo a quello di produzione. Gli altri sviluppatori di Looker possono quindi esaminare e approvare la richiesta di pull dall'interfaccia web del provider Git.
Looker supporta l'integrazione delle richieste di pull per i seguenti provider Git:
- GitHub
- GitLab
- Bitbucket Cloud
- Bitbucket Server (in precedenza "Stash")
Ecco alcune note aggiuntive sull'utilizzo delle richieste di pull con Looker:
Per aprire le richieste di pull, gli sviluppatori devono avere un account presso il tuo provider Git e avere accesso al repository Git del progetto.
Se la funzionalità Lista consentita IP è attivata nella tua istanza, per integrare le richieste pull con i progetti LookML devi aggiungere alla lista consentita l'intervallo di indirizzi IP da cui il tuo provider Git invia richieste in uscita. Ad esempio, gli indirizzi IP di GitHub attuali sono elencati nel log delle modifiche GitHub. Gli IP sono soggetti a modifiche e saranno diversi per altri provider Git.
Se hai attivato la modalità di deployment avanzata, non è necessario configurare un webhook nella sezione Configurare il progetto con le richieste pull integrate, poiché la modalità di deployment avanzata separa le funzioni di unione e deployment.
Se uno sviluppatore di Looker ha inviato una richiesta di pull di cui vuoi annullare l'aggiornamento, consulta il post della community Come annullare le richieste di pull da Looker tramite GitHub per ulteriori informazioni.
Le richieste pull di Git possono consentire di utilizzare un'istanza di staging per Looker, in modo da avere un'istanza di staging e un'istanza di produzione, con le richieste pull abilitate nell'istanza di staging. Tutte le attività di sviluppo e revisione del codice possono essere eseguite nell'ambiente di gestione temporanea e il codice esaminato può essere implementato nell'istanza di produzione. Per configurare questa impostazione, consulta il post della community Flusso di lavoro Git che utilizza un repository su più istanze: sviluppo, staging e produzione.
Looker unisce le modifiche da un ramo sviluppatore di Looker al ramo di produzione utilizzando il metodo di unione del commit di unione. Quando utilizzi l'interfaccia del tuo provider Git, assicurati che i tuoi sviluppatori non utilizzino l'unione con squash né ribasare l'unione. Per ulteriori informazioni, vedi la sezione Opzioni di unione nell'interfaccia del provider Git.
Configurazione del progetto con richieste di pull integrate
Per configurare il progetto Looker con le richieste di pull Git:
- Nel progetto, seleziona Impostazioni dal menu delle icone di Looker IDE.
- Nella sezione Integrazione Git della scheda Configurazione, seleziona Pull request consigliate o Pull request obbligatorie.
- Se vuoi configurare un webhook di deployment automatico nell'interfaccia del tuo provider Git, copia le informazioni sull'webhook e incollale in un file di testo. Se il progetto è configurato per utilizzare la modalità di deployment avanzato, puoi saltare questo passaggio. Puoi anche decidere in un secondo momento e tornare alle impostazioni del progetto per ottenere le informazioni sul webhook.
- Facoltativamente, puoi configurare un secret di deployment webhook per autenticare un webhook di deployment automatico dal tuo provider Git o un webhook in modalità di deployment avanzata. Per creare un secret webhook, fai clic su Imposta secret webhook. Copia il segreto di deployment e incollalo in un file di testo da utilizzare quando aggiungi l'webhook all'interfaccia del tuo provider Git. Puoi anche decidere in un secondo momento e tornare alle impostazioni del progetto per aggiungere un secret di deployment. Per ulteriori informazioni, consulta la pagina della documentazione Configurazione del segreto di deployment del webhook.
- Fai clic su Salva configurazione progetto.
Ora, ogni volta che uno sviluppatore di Looker esegue il commit di modifiche al progetto, l'IDE di Looker mostra il pulsante Apri richiesta di pull. Il pulsante apre una nuova scheda del browser direttamente nella pagina della nuova richiesta di pull sul sito web del tuo provider Git.
Dopo aver configurato il progetto Looker per utilizzare le richieste pull, esegui una delle seguenti operazioni per configurare il modo in cui i commit vengono di cui vengono eseguiti i deployment nell'ambiente di produzione:
- Per eseguire il deployment automatico degli ultimi commit uniti al ramo di produzione, utilizza l'interfaccia del tuo provider Git per aggiungere un webhook, come descritto nella sezione successiva di questa pagina.
- Per specificare manualmente i branch o i commit da eseguire, attiva la modalità di deployment avanzata. Per informazioni sull'abilitazione e la gestione della modalità di deployment avanzata, consulta la pagina della documentazione relativa alla modalità di deployment avanzata.
Aggiunta di un webhook al provider Git
Per i progetti Looker abilitati per le richieste di pull, puoi impostare un webhook di deployment nell'interfaccia del tuo provider Git. Questo webhook attiva a Looker il deployment del commit più recente dal ramo di produzione ogni volta che unisci una richiesta di pull nell'interfaccia del provider Git.
Nella maggior parte dei casi, non è consigliabile configurare un webhook di deployment automatico se il progetto è configurato per utilizzare la modalità di deployment avanzata. La modalità di deployment avanzata ti consente di selezionare il commit e il ramo da eseguire, pertanto nella maggior parte dei casi la configurazione di un webhook di deployment automatico annullerebbe le funzionalità della modalità di deployment avanzata.
Per aggiungere un webhook di deployment automatico all'interfaccia del tuo provider Git, vai prima alle impostazioni del progetto in Looker facendo clic sull'icona Impostazioni nel menu delle icone dell'IDE di Looker del progetto. Quindi, copia l'webhook dalla sezione Integrazione Git.
Il webhook ha il formato <instance_url>/webhooks/projects/<project_name>/deploy
.
Sostituisci <instance_url>
con l'URL della tua istanza di Looker. Ad esempio, se l'URL dell'istanza di Looker è example.looker.com
e il nome del progetto è e_faa
, il webhook sarà simile a questo:
https://example.looker.com/webhooks/projects/e_faa/deploy
Dalle impostazioni del progetto Looker, puoi anche ottenere un secret di deployment webhook per autenticare le integrazioni Git del tuo progetto con il tuo provider Git. Per ulteriori informazioni, consulta la pagina della documentazione Configurazione del segreto di deployment del webhook.
Una volta ottenuti l'URL webhook e il secret del webhook di deployment, puoi inserirli nell'interfaccia del tuo provider Git. Se il tuo provider Git è GitHub, segui questi passaggi:
- Vai alle impostazioni del repository del progetto nel tuo repository GitHub.
- Nelle impostazioni del repository, fai clic su Webhook. Fai clic su Aggiungi webhook per aprire la finestra Aggiungi webhook.
- Nel campo Payload URL (URL payload), incolla le informazioni sul webhook che hai copiato dalla sezione Integrazione Git in Looker.
- Se vuoi, puoi aggiungere un secret di deployment webhook che autentica le integrazioni Git del tuo progetto con il tuo provider Git. Copia il secret di deployment dalle impostazioni del progetto del tuo progetto LookML e incollalo nel campo Secret nell'interfaccia del provider Git. Per ulteriori informazioni, consulta la pagina della documentazione Configurazione del secret di deployment webhook.
- Seleziona l'opzione Solo l'evento push nel campo Quali eventi vuoi attivare questo webhook??
- Fai clic su Aggiungi webhook.
Utilizzo di un webhook di deployment per eseguire il pull da un repository Git remoto
Quando le richieste pull sono attivate per il progetto LookML e i webhook di deployment non sono automatizzati, a volte potresti notare che il codice LookML visualizzato nella modalità di produzione di Looker non corrisponde a quello nel ramo principale del tuo repository Git. Ciò può verificarsi nelle seguenti situazioni:
- Quando sono abilitate le richieste di pull per il repository
- Quando il LookML è stato modificato al di fuori dell'ambiente di sviluppo di Looker, ad esempio:
- Nel repository Git stesso
- In un'altra istanza Looker, ad esempio un'istanza di staging
Puoi sincronizzare il ramo di produzione di Looker con il ramo principale del repository utilizzando un webhook di deployment:
Apri una nuova scheda del browser e digita il seguente URL, sostituendo
<instance_url>
con l'URL dell'istanza di Looker e<project_name>
con il nome del tuo progetto LookML:<instance_url>/webhooks/projects/<project name>/deploy
Dopo aver eseguito l'URL webhook di deployment, una pagina web vuota visualizzerà un messaggio di operazione riuscita simile al seguente:
{"operations":[{"error":false,"error_code":0,"command":"Checkout Branch #\u003cLooker::GitBranch:0x5798672b\u003e","node_id":728,"results":["Success"]},{"error":false,"error_code":0,"command":"jgit revert_repo","node_id":728,"results":["Success"]}],"new_head":"05f772af48709fc2799fefe408e3fdd895a63284","old_head":"77412cad9fd7ed3eed1627afa201fdf7dcb97dd1"}
Ora la modalità di produzione in Looker è stata aggiornata in base al ramo principale Git remoto. Il tuo ramo sviluppatore personale e i rami condivisi non sono interessati.
Estrazione da un repository Git remoto per gli webhook con i segreti di deployment
Se il tuo progetto LookML richiede anche un token di accesso per il deployment webhook per eseguire il push delle modifiche dal ramo principale al ramo di produzione, riceverai uno dei seguenti errori quando sincronizzi il ramo di produzione con il ramo principale del repository utilizzando il metodo descritto nella sezione precedente, Utilizzare un webhook di deployment per eseguire il pull da un repository Git remoto:
{"error":"Uh oh! Something went wrong."}
In alternativa:
{"error":"Not found."}
Anziché utilizzare l'webhook di deployment, puoi eseguire il seguente comando cURL nel terminale con il segreto dell'webhook. Assicurati di sostituire i seguenti campi:
- Sostituisci
<instance_URL>
con l'URL dell'istanza di Looker. - Sostituisci
<deploy_secret>
con il secret di deployment del progetto. - Sostituisci
<project_name>
con il nome del tuo progetto LookML.
curl -i -X POST -H "X-Looker-Deploy-Secret:<deploy_secret>" https://<instance_url>/webhooks/projects/<project_name>/deploy
Ad esempio, se dovessi sincronizzare un ramo di produzione per ecommerce_project nell'istanza Brettcase con il ramo principale del repository:
curl -i -X POST -H "X-Looker-Deploy-Secret:123123123secretgoeshere123123123" https://brettcase.looker.com/webhooks/projects/ecommerce_project/deploy
Opzioni di unione nell'interfaccia del fornitore Git
Se il tuo progetto Looker è integrato con le richieste di pull, i tuoi sviluppatori utilizzano l'interfaccia del tuo provider Git per inviare richieste di pull e unire le modifiche nel ramo di produzione.
Looker supporta il metodo commit di unione per unire le modifiche da un ramo di sviluppo al ramo di produzione. Tuttavia, l'interfaccia del tuo provider Git potrebbe mostrare opzioni aggiuntive per l'unione, come Squash e unione o Rebase e unione.
Looker non supporta l'unione per annullamento o l'unione con rebase, pertanto gli sviluppatori devono evitare di utilizzare queste opzioni. Se possibile, la best practice è disabilitare queste opzioni per il repository. Per disattivare queste opzioni in un repository GitHub:
Vai alla scheda Impostazioni per accedere alle impostazioni del repository del tuo progetto su GitHub.
SUGGERIMENTO: per i progetti configurati con l'integrazione Git, puoi utilizzare l'opzione Visualizza progetto su Git dal menu Git del progetto in Looker.
Nelle impostazioni del repository, fai clic su Opzioni nel menu di navigazione.
Vai alla sezione Pulsante Unisci e lascia selezionata solo l'opzione Consenti commit di unione. Disattiva le opzioni Consenti l'unione dello squash e Consenti ribase dell'unione.
Una volta disabilitate, le opzioni di unione non saranno disponibili in GitHub quando gli sviluppatori uniscono un ramo nel repository.