Erweiterter Bereitstellungsmodus

Bei der standardmäßigen Looker-Git-Integration übertragen Looker-Entwickler ihre Änderungen in ihren Entwicklungszweig und führen diesen dann mit dem Produktionszweig zusammen. Wenn Sie die Änderungen in der Looker-Umgebung bereitstellen, verwendet Looker den letzten Commit im Produktionszweig. Informationen zum standardmäßigen Git-Workflow und zu anderen Optionen für erweiterte Git-Implementierungen finden Sie auf der Dokumentationsseite Versionsverwaltung verwenden und bereitstellen.

Bei erweiterten Git-Implementierungen, bei denen nicht der letzte Commit in Ihrem Produktionszweig für Ihre Looker-Umgebung verwendet werden soll, kann ein Looker-Administrator den erweiterten Bereitstellungsmodus aktivieren. Wenn der erweiterte Bereitstellungsmodus aktiviert ist, kann ein Entwickler mit der Berechtigung deploy einen anderen Commit-SHA oder ein anderes Tag für die Bereitstellung in Ihrer Looker-Produktionsumgebung angeben, anstatt den neuesten Commit im Produktionszweig zu verwenden. Wenn Sie einen Commit aus einem anderen Branch bereitstellen möchten, können Sie den erweiterten Bereitstellungsmodus Webhook oder API-Endpunkt verwenden.

Der erweiterte Bereitstellungsmodus hilft, Repositorys in Entwickler-Workflows mit mehreren Umgebungen zu konsolidieren, in denen jede Umgebung auf eine andere Version einer Codebasis verweist. Außerdem erhalten ein oder mehrere Entwickler oder Administratoren mehr Kontrolle über die Änderungen, die in der Produktion bereitgestellt werden.

Wenn der erweiterte Bereitstellungsmodus aktiviert ist, werden Entwickler in Looker nicht aufgefordert, ihre Änderungen in der Produktion bereitzustellen. Stattdessen werden Entwickler in Looker aufgefordert, ihre Änderungen mit dem Produktionszweig zusammenzuführen. Änderungen können nur auf folgende Weise bereitgestellt werden:

Erweiterten Bereitstellungsmodus aktivieren

So aktivieren Sie den erweiterten Bereitstellungsmodus:

  1. Rufen Sie in der Looker IDE die Seite Projektkonfiguration auf. Klicken Sie dazu im Symbolmenü auf das Symbol Einstellungen und wählen Sie dann den Tab Konfiguration aus.
  2. Setzen Sie auf der Seite Projektkonfiguration im Bereich Bereitstellung ein Häkchen neben Erweiterten Bereitstellungsmodus aktivieren.
  3. Klicken Sie auf den Button Projektkonfiguration speichern, um die Änderung zu speichern.

Versionsverwaltung mit dem erweiterten Bereitstellungsmodus

Wenn der erweiterte Bereitstellungsmodus aktiviert ist, können Entwickler nicht mehr über Looker in der Produktion bereitstellen. Stattdessen werden Entwickler beim Ausführen eines Commits über den Git-Button aufgefordert, ihre Änderungen mit dem primären Branch zusammenzuführen, anstatt sie in der Produktion bereitzustellen.

Änderungen werden mithilfe eines Webhooks, der API oder des Deployment Managers in der Produktion bereitgestellt.

Deployment Manager

Bei Projekten mit aktiviertem erweiterten Bereitstellungsmodus können Looker-Entwickler mit der Berechtigung deploy den Bereitstellungsmanager verwenden, um einen Commit oder ein Tag in ihrer Looker-Produktionsumgebung bereitzustellen.

Sie können auf den Deployment Manager zugreifen, indem Sie im Symbolmenü das Symbol Bereitstellen auswählen.

Im Deployment Manager werden alle Commits und Tags angezeigt, die zuvor im erweiterten Bereitstellungsmodus bereitgestellt wurden.

Wenn Sie den erweiterten Bereitstellungsmodus noch nicht verwendet haben, um einen Commit bereitzustellen, klicken Sie auf die Schaltfläche Commit auswählen, um den Commit-Verlauf mit den Commits aufzurufen, die Ihre Looker-Entwickler in den Produktionszweig zusammengeführt haben.

Bei Projekten, bei denen ein Commit im erweiterten Bereitstellungsmodus bereitgestellt wurde, werden im Commit-Verlauf auch die zugehörigen Tags eines Commits (falls vorhanden) angezeigt. Außerdem wird angegeben, welcher Commit die aktuelle Version ist, die für die Produktion verwendet wird.

Wenn der Produktions-Branch neuere Commits als der bereitgestellte Commit enthält, werden diese Informationen im Deployment Manager angezeigt. Außerdem wird der neueste Commit angezeigt, den Ihre Looker-Entwickler in den Produktions-Branch zusammengeführt haben.

Commit über den Deployment Manager bereitstellen

Es gibt mehrere Möglichkeiten, einen Commit über den Deployment Manager bereitzustellen:

  1. Wenn Sie einen Commit bereitstellen möchten, der noch nicht bereitgestellt wurde, klicken Sie auf die Schaltfläche Commit auswählen, um einen der Commits auszuwählen, die in den Remote-Produktionszweig zusammengeführt wurden. Wenn Sie einen Commit aus einem anderen Branch bereitstellen möchten, verwenden Sie den erweiterten Bereitstellungsmodus Webhook oder API-Endpunkt.
  2. Wenn Sie den zuletzt zusammengeführten Commit im Remote-Produktionszweig bereitstellen möchten, klicken Sie auf die Schaltfläche Deploy Latest (Neueste Version bereitstellen).
  3. Wenn Sie einen Commit oder ein Tag bereitstellen möchten, der bzw. das bereits bereitgestellt wurde, klicken Sie im Bereitstellungsmanager auf das Dreipunkt-Menü Optionen  und dann auf In der Produktion bereitstellen.

Wenn Sie einen Commit auswählen, der noch nicht bereitgestellt wurde, wird im Deployment Manager das Menü Commit bereitstellen angezeigt. So stellen Sie einen Commit über das Menü Deploy Commit (Commit bereitstellen) bereit:

  1. Wenn Sie den Commit bereitstellen möchten, ohne ihm ein Tag zuzuweisen, wählen Sie Ohne Tagging bereitstellen und dann In Umgebung bereitstellen aus. Andernfalls lassen Sie die Option Taggen und bereitstellen ausgewählt.
  2. Geben Sie ein Tag für den Commit an. Ein Git-Tag kennzeichnet die Bedeutung des Commits im Verlauf des Repositorys, z. B. eine Release-Nummer oder einen Versionsnamen. Beachten Sie Folgendes zu Git-Tags:

    • Git-Tags müssen innerhalb des Git-Repositorys eindeutig sein. Sie können nicht dasselbe Tag für zwei verschiedene Commits in Ihrem Repository verwenden.
    • Git-Tags dürfen keine Leerzeichen oder bestimmte Sonderzeichen enthalten. Informationen zu den Regeln für die Benennung von Referenzen in Git finden Sie in der Git-Referenz.
  3. Optional können Sie eine Beschreibung für das Tag hinzufügen, um weitere Details zum Commit anzugeben.

  4. Wählen Sie In Umgebung bereitstellen aus, um den Commit in der Produktionsversion Ihrer Looker-Instanz bereitzustellen.

Wenn Sie einen Commit bereitstellen, wird er vom Bereitstellungsmanager als aktuelle Version in Ihrer Looker-Produktionsumgebung gekennzeichnet.

Mit Webhooks bereitstellen

Bei Projekten mit dem erweiterten Bereitstellungsmodus können Sie den Bereitstellungs-Webhook verwenden, um Änderungen in der Produktion bereitzustellen.

Wenn Sie den Deploy-Webhook einrichten möchten, müssen Sie zuerst auf der Seite Projektkonfiguration ein Webhook-Secret für Ihr Looker-Projekt hinzufügen. Durch das Hinzufügen eines Webhook-Secrets wird sichergestellt, dass nur autorisierte Parteien den Deploy-Webhook auslösen können.

Zwei Webhooks sind verfügbar, um Änderungen in der Produktion bereitzustellen, wenn der erweiterte Bereitstellungsmodus aktiviert ist. Ein Webhook dient zum Bereitstellen des Kopfes einer Verzweigung und der andere zum Bereitstellen eines bestimmten Git-SHA oder ‑Tags.

Der Webhook zum Bereitstellen des Head eines Branch hat folgendes Format:

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

Der Webhook zum Bereitstellen eines Commit-SHA oder -Tags hat folgendes Format:

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

Ersetzen Sie die Informationen in den spitzen Klammern < > durch die Informationen, die für Ihre Instanzadresse, Ihr LookML-Projekt und Ihren Branch-Namen oder Commit-SHA/Tag spezifisch sind. Hier ist ein Beispiel-Webhook zum Bereitstellen des v1.0-Tag-Namens für das Projekt e_faa in der Looker-Instanz docsexamples.dev.looker.com:

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

Mit der API bereitstellen

Bei Projekten mit dem erweiterten Bereitstellungsmodus können Sie die Looker API verwenden, um Änderungen in der Produktion bereitzustellen.

Für die Bereitstellung mit der API muss der API-Nutzer, der den Aufruf ausführt, die Berechtigung deploy haben. Weitere Informationen zur Authentifizierung und Verwendung der Looker API finden Sie in der Dokumentation zu Looker API-Authentifizierung und Erste Schritte mit der API.

Verwenden Sie zum Bereitstellen mit der API den Endpunkt deploy_ref_to_production. Dieser Endpunkt kann auf verschiedene Arten aufgerufen werden. Die folgenden Beispiele beziehen sich auf die Methoden HTTPS und SDK.

HTTPS

Wenn Sie die Bereitstellung manuell über den API-Endpunkt deploy_ref_to_production vornehmen möchten, sehen Sie sich die folgenden Beispiele an, in denen die HTTPS-Methode verwendet wird. Weitere Informationen und Beispiele für das manuelle Aufrufen der API mit CURL-Anfragen finden Sie in der GitHub-Readme zur Authentifizierung bei der API oder im API Explorer. Sie können den API Explorer über den Looker Marketplace in Ihrer Looker-Instanz installieren.

Verwenden Sie die folgenden Beispiele in einer HTTPS-Anfrage, um entweder den Head eines Zweigs oder einen bestimmten Commit-SHA oder ein bestimmtes Tag über den deploy_ref_to_production-API-Endpunkt bereitzustellen:

Head eines Zweigs bereitstellen: <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?branch=<BRANCH_NAME>

Commit-SHA oder Tag bereitstellen: <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?ref=<SHA_OR_TAG>

SDK

Alternativ können Sie eines der SDKs von Looker verwenden, anstatt manuelle Anfragen an die API zu senden. SDKs kümmern sich um die Authentifizierung, die Serialisierung von Parametern und Antworten sowie andere Aspekte.

Die Bereitstellung mit deploy_ref_to_production mit der SDK-Methode sieht so aus:

Head eines Zweigs bereitstellen: deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})

Commit-SHA oder Tag bereitstellen: deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})