Modalità di deployment avanzata

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. 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 avanzate di Git.

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 attivata, la modalità di deployment avanzata consente a uno sviluppatore con autorizzazione deploy di specificare un tag o un SHA commit diverso da eseguire nel tuo ambiente di produzione di Looker, anziché utilizzare l'ultimo commit nel 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. Inoltre, offre a uno o più sviluppatori o amministratori un maggiore controllo sulle modifiche implementate in produzione.

Quando è abilitata la modalità di deployment avanzato, Looker non chiede agli sviluppatori di eseguire il deployment delle modifiche in produzione. Al contrario, Looker chiede agli sviluppatori di unire le modifiche al 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 attivare la modalità di deployment avanzata:

  1. Nell'IDE di Looker, vai alla pagina Configurazione progetto selezionando l'icona Settings (Impostazioni) dal menu dell'icona, quindi selezionando la scheda Configuration (Configurazione).
  2. Nella pagina Configurazione progetto, seleziona la casella di controllo accanto ad Attiva 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 chiede di unire le modifiche al ramo principale anziché eseguire il deployment in produzione.

Le modifiche vengono implementate in produzione utilizzando un webhook, l'API o il gestore del deployment.

Deployment Manager

Per i progetti con la modalità di deployment avanzata abilitata, gli sviluppatori di Looker che dispongono dell'autorizzazione deploy possono utilizzare il deployment manager per eseguire il deployment di un commit o di un tag nell'ambiente di produzione di Looker.

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

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 avanzata 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 di 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 contiene commit più recenti rispetto al commit 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 dal deployment manager:

  1. Per eseguire il deployment di un commit che non è stato ancora eseguito, fai clic sul pulsante Seleziona commit per scegliere tra tutti i commit che sono stati uniti al ramo di produzione remoto. 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 dell'ultimo commit unito nel ramo di produzione remoto, fai clic sul pulsante Esegui il deployment dell'ultima versione.
  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 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 di Git per le regole di 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, Deployment Manager lo contrassegnerà 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 Configurazione progetto. L'aggiunta di un secret webhook garantisce che solo le parti autorizzate possano attivare il webhook di deployment.

Sono disponibili due webhook per eseguire 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 ulteriori informazioni sull'autenticazione e sull'utilizzo dell'API Looker, consulta le pagine di documentazione Autenticazione API Looker e Introduzione 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 si riferiscono ai 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.

Utilizza i seguenti esempi in una richiesta HTTPS per eseguire il deployment del commit HEAD di un ramo o di un tag o SHA 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 un tag o di un'SHA del 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é inviare richieste manuali all'API. Gli SDK gestiscono i dettagli dell'autenticazione, la serializzazione dei parametri e delle risposte e altri problemi.

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

Esegui il deployment del commit iniziale 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>})