Modalità di deployment avanzata

Con l'integrazione predefinita del Git di Looker, gli sviluppatori di Looker eseguono il commit delle modifiche nel ramo di sviluppo, quindi uniscono il ramo di sviluppo a quello di produzione. Quando esegui il deployment nell'ambiente Looker, Looker utilizza il commit più recente nel 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 Git avanzate.)

Per implementazioni Git avanzate in cui non vuoi che venga utilizzato l'ultimo commit nel ramo di produzione per il tuo ambiente Looker, un amministratore di Looker può abilitare la modalità di deployment avanzata. Se abilitata, la modalità di deployment avanzata consente a uno sviluppatore con autorizzazione deploy di specificare una SHA o un tag di commit diverso di cui eseguire il deployment nell'ambiente di produzione Looker, anziché utilizzare il commit più recente sul ramo di produzione. Se vuoi eseguire il deployment di un commit da un ramo diverso, puoi utilizzare la modalità di deployment avanzata webhook o endpoint API.

La modalità di deployment avanzata consente di consolidare i repository nei flussi di lavoro degli sviluppatori multi-ambiente, in cui ogni ambiente punta a una versione diversa di un codebase. Offre inoltre a uno o più sviluppatori o amministratori un maggiore controllo sulle modifiche di cui viene eseguito il deployment in produzione.

Quando è abilitata la modalità di deployment avanzato, Looker non chiede agli sviluppatori di eseguire il deployment delle modifiche in produzione. Looker chiede invece agli sviluppatori di unire le modifiche nel ramo di produzione. Da qui, il deployment delle modifiche può essere eseguito solo nei seguenti modi:

Abilitazione della modalità di deployment avanzata in corso...

Per abilitare la modalità di deployment avanzata:

  1. Accedi alla scheda Configurazione della pagina Impostazioni progetto selezionando l'icona Impostazioni dal menu icona.
  2. Seleziona la casella di controllo accanto ad Abilita modalità di deployment avanzata nella sezione Deployment.
  3. Seleziona il pulsante Salva configurazione progetto per salvare la modifica.

Controllo delle versioni con modalità di deployment avanzata

Quando è abilitata la modalità di deployment avanzato, il deployment in produzione da Looker non è più un'opzione per gli sviluppatori. Quando lo sviluppatore esegue un commit, il pulsante Git gli richiederà di unire le modifiche al ramo principale anziché di eseguire il deployment in produzione.

Il deployment delle modifiche in produzione viene eseguito utilizzando un webhook, l'API o deployment Manager.

Deployment Manager

Per i progetti in cui è abilitata la modalità di deployment avanzata, gli sviluppatori di Looker che dispongono dell'autorizzazione deploy possono utilizzare Deployment Manager per eseguire il deployment di un commit o di un tag nel proprio ambiente di produzione Looker.

Puoi accedere a Deployment Manager selezionando l'icona Esegui il deployment dal menu dell'icona.

Deployment Manager mostra tutti i commit e i tag di cui è stato precedentemente eseguito il deployment utilizzando la modalità di deployment avanzata.

Se non hai ancora utilizzato la modalità di deployment avanzato per eseguire il deployment di un commit, fai clic sul pulsante Seleziona commit per visualizzare la cronologia dei commit con i commit che gli sviluppatori Looker hanno unito al ramo di produzione.

Per i progetti che hanno utilizzato la modalità di deployment avanzata per eseguire il deployment di un commit, la cronologia del commit mostrerà anche i tag associati a un commit, se presenti, e indicherà quale commit è la versione corrente utilizzata per la produzione.

Se il ramo di produzione ha commit più recenti rispetto a quello di cui è stato eseguito il deployment, il gestore del deployment mostra queste informazioni e il commit più recente che gli sviluppatori di Looker hanno unito al ramo di produzione.

Deployment di un commit da Deployment Manager

Esistono diversi modi per eseguire il deployment di un commit da Deployment Manager:

  1. Per eseguire il deployment di un commit di cui non è stato ancora eseguito il deployment, fai clic sul pulsante Seleziona commit per scegliere tra tutti i commit che sono stati uniti nel ramo della produzione remota. Se vuoi eseguire il deployment di un commit da un ramo diverso, utilizza la modalità di deployment avanzata webhook o endpoint API.
  2. Per eseguire il deployment del commit unito più di recente nel ramo della produzione remota, fai clic sul pulsante Deploy più recente.
  3. Per eseguire il deployment di un commit o di un tag di cui è stato eseguito il deployment in precedenza, fai clic sul menu con tre puntini Opzioni dal gestore di deployment, quindi su Esegui il deployment in produzione.

Se scegli un commit di cui non è stato eseguito il deployment in precedenza, Deployment Manager mostrerà il menu Esegui il deployment del commit. Per eseguire il deployment di un commit dal menu Esegui il deployment del commit, segui questi passaggi:

  1. Per eseguire il deployment del commit senza assegnargli un tag, seleziona Esegui il deployment senza tagging e poi Esegui il deployment nell'ambiente. In caso contrario, mantieni selezionata l'opzione Tagga e implementa.
  2. Specifica un tag per il commit. Un tag Git contrassegna il significato del commit nella cronologia del repository, ad esempio un numero di release o un nome di versione. Tieni presente quanto segue sui tag Git:

    • I tag Git devono essere univoci all'interno del repository Git. Non puoi utilizzare lo stesso tag per due commit diversi nel repository.
    • I tag Git non possono contenere spazi o determinati caratteri speciali. Consulta la documentazione di riferimento Git per conoscere le regole per la denominazione dei riferimenti in Git.
  3. Se vuoi, puoi aggiungere una descrizione del tag per fornire ulteriori dettagli sul commit.

  4. Seleziona Esegui il deployment nell'ambiente per eseguire il deployment del commit nella versione di produzione dell'istanza di Looker.

Una volta eseguito il deployment di un commit, il gestore del deployment contrassegnerà il commit come versione corrente nell'ambiente di produzione di Looker.

Deployment con webhook

Per i progetti con modalità di deployment avanzata, puoi utilizzare il webhook di deployment per eseguire il deployment delle modifiche in produzione.

Per configurare il webhook di deployment, devi prima aggiungere un secret webhook per il progetto Looker dalla pagina Impostazioni progetto. Questo serve a garantire che solo le parti autorizzate possano attivare il webhook di deployment.

Sono disponibili due webhook per il deployment delle modifiche in produzione con la modalità di deployment avanzata abilitata. Un webhook è per il deployment dell'intestazione di un ramo, mentre l'altro per il deployment di una SHA o di un tag Git specifico.

Il webhook per il deployment dell'intestazione di un ramo utilizza questo formato:

<Looker URL>/webhooks/projects/<LookML project name>/deploy/branch/<Git branch name>

Il webhook per eseguire il deployment di una SHA o di un tag di commit utilizza questo formato:

<Looker URL>/webhooks/projects/<LookML project name>/deploy/ref/<commit SHA or tag>

Sostituisci le informazioni nelle parentesi angolari < > con quelle specifiche per l'indirizzo dell'istanza, il progetto LookML e il nome del ramo o SHA/tag di commit. Ecco un esempio di webhook per eseguire il deployment del nome tag v1.0 per il progetto e_faa sull'istanza di Looker docsexamples.dev.looker.com:

https://docsexamples.dev.looker.com/webhooks/projects/e_faa/deploy/ref/v1.0

Deployment con l'API

Per i progetti con modalità di deployment avanzata, puoi utilizzare l'API Looker per eseguire il deployment delle modifiche in produzione.

Per eseguire il deployment con l'API, l'utente API che effettua la chiamata deve disporre dell'autorizzazione deploy. Per saperne di più sull'autenticazione e sull'utilizzo dell'API Looker, consulta le pagine della documentazione sull'autenticazione dell'API Looker e sulla guida introduttiva all'API.

Per eseguire il deployment con l'API, utilizza l'endpoint deploy_ref_to_production. Questo endpoint può essere chiamato in diversi modi. Gli esempi riportati di seguito riguardano i metodi HTTPS e SDK.

HTTPS

Per eseguire il deployment manuale utilizzando l'endpoint API deploy_ref_to_production, guarda i seguenti esempi, che utilizzano il metodo HTTPS. Per ulteriori informazioni ed esempi di chiamata manuale all'API mediante richieste CURL, consulta il file Leggimi GitHub di How to Authenticate to the API (Come eseguire l'autenticazione nell'API) oppure utilizza Explorer API. Puoi installare Explorer API sulla tua istanza Looker da Looker Marketplace.

Usa i seguenti esempi in una richiesta HTTPS per eseguire il deployment dell'intestazione di un ramo oppure di una SHA o di un tag di commit specifico tramite l'endpoint API deploy_ref_to_production:

Esegui il deployment dell'intestazione di un ramo: <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?branch=<BRANCH_NAME>

Esegui il deployment di una SHA o di un tag di commit: <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?ref=<SHA_OR_TAG>

SDK

In alternativa, utilizza uno degli SDK di Looker anziché effettuare richieste manuali all'API. Gli SDK gestiscono i dettagli dell'autenticazione, la serializzazione dei parametri e delle risposte e altri problemi.

Il deployment utilizzando deploy_ref_to_production con il metodo SDK ha il seguente aspetto:

Esegui il deployment dell'intestazione di un ramo: deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})

Esegui il deployment di una SHA o di un tag di commit: deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})