Erweiterter Bereitstellungsmodus

Bei der standardmäßigen Looker-Git-Integration übernehmen Looker-Entwickler ihre Änderungen in ihren Entwicklungszweig und führen dann ihren Entwicklungszweig mit dem Produktionszweig zusammen. Bei der Bereitstellung in der Looker-Umgebung verwendet Looker dann den neuesten Commit für den Produktionszweig. Auf der Dokumentationsseite Versionsverwaltung und Bereitstellung finden Sie den Standardgit-Workflow und andere Optionen für erweiterte Git-Implementierungen.

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

Mit dem erweiterten Bereitstellungsmodus können Sie Repositories in Entwicklungsumgebungen in mehreren Umgebungen konsolidieren, wobei jede Umgebung auf eine andere Version einer Codebasis verweist. Außerdem geben Sie einem oder mehreren Entwicklern 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 von Looker aufgefordert, ihre Änderungen mit dem Produktionszweig zusammenzuführen. Von dort aus können Änderungen nur auf folgende Arten bereitgestellt werden:

Erweiterten Bereitstellungsmodus aktivieren

So aktivieren Sie den erweiterten Bereitstellungsmodus:

  1. Rufen Sie auf der Seite Projekteinstellungen den Tab Konfiguration auf, indem Sie im Menü auf der linken Seite das Symbol Einstellungen auswählen.
  2. Klicken Sie im Abschnitt Deployment auf das Kästchen neben Erweiterten Bereitstellungsmodus aktivieren.
  3. Klicken Sie auf die Schaltfläche Projektkonfiguration speichern, um die Änderung zu speichern.

Versionsverwaltung mit erweitertem Bereitstellungsmodus

Wenn der erweiterte Bereitstellungsmodus aktiviert ist, ist die Bereitstellung in der Produktionsumgebung über Looker für Entwickler nicht mehr möglich. Wenn der Entwickler stattdessen ein Commit ausführt, werden die Nutzer aufgefordert, ihre Änderungen mit dem primären Zweig zusammenzuführen, anstatt sie in der Produktionsumgebung bereitzustellen.

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

Deployment Manager

Bei Projekten mit erweitertem Bereitstellungsmodus können Looker-Entwickler, die die Berechtigung deploy haben, mit dem Deployment Manager ein Commit oder Tag in ihrer Looker-Produktionsumgebung bereitstellen.

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

Wie auf dieser Seite im Abschnitt Commit über den Deployment Manager bereitstellen beschrieben, können Sie ein Commit mit oder ohne Tag ausführen. Wenn Sie einen Commit mit einem Tag bereitstellen, zeigt der Deployment Manager das Tag-SHA an, das sich von einem Commit-SHA unterscheidet. Im Commit-Verlauf des Looker-Projekts haben Sie die Möglichkeit, das mit einem Tag verknüpfte Commit-SHA aufzurufen. Wenn Sie ein Commit ohne Tag bereitstellen, zeigt der Deployment Manager den Commit-SHA an. Dieser Wert ist mit dem Commit-SHA identisch, den Sie auf der Benutzeroberfläche Ihres Git-Anbieters oder im Commit-Verlauf Ihres Looker-Projekts sehen können.

Wenn Sie den erweiterten Bereitstellungsmodus noch nicht zum Bereitstellen eines Commits verwendet haben, klicken Sie auf die Schaltfläche Commit auswählen, um den Commit-Verlauf mit den Commits zu sehen, die Ihre Looker-Entwickler mit dem Produktionszweig zusammengeführt haben.

Bei Projekten, die den erweiterten Bereitstellungsmodus zum Bereitstellen eines Commits verwendet haben, werden im Commit-Verlauf auch die zugehörigen Tags angezeigt. Außerdem wird angegeben, welcher Commit die aktuelle Version für die Produktion ist.

Wenn der Produktionszweig mehr aktuelle Commits als der bereitgestellte Commit hat, zeigt dieser Deployment-Manager diese Informationen an und zeigt den letzten Commit an, den Ihre Looker-Entwickler mit dem Produktionszweig zusammengeführt haben.

Commit über den Deployment Manager bereitstellen

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

  1. Wenn Sie ein Commit, das noch nicht bereitgestellt wurde, bereitstellen möchten, klicken Sie auf die Schaltfläche Commit auswählen, um aus allen Commits auszuwählen, die mit dem Remote-Produktionszweig zusammengeführt wurden. Wenn Sie ein Commit aus einem anderen Zweig bereitstellen möchten, verwenden Sie den erweiterten Webhook-Modus oder den API-Endpunkt.
  2. Wenn Sie den zuletzt zusammengeführten Commit für den Remote-Produktionszweig bereitstellen möchten, wählen Sie die Schaltfläche Neuestes bereitstellen aus.
  3. Wenn Sie ein bereits bereitgestelltes Commit oder Tag bereitstellen möchten, wählen Sie im Deployment Manager das Dreipunkt-Menü Options und dann In Produktion bereitstellen aus.

Wenn Sie ein Commit auswählen, das noch nicht bereitgestellt wurde, zeigt der Deployment Manager das modale Fenster Commit bereitstellen an.

  1. Wenn Sie das Commit bereitstellen möchten, ohne ihm ein Tag zuzuweisen, wählen Sie Ohne Tag bereitstellen und dann In Umgebung bereitstellen aus. Behalten Sie andernfalls die Option Tagging und Bereitstellen bei.
  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 Releasenummer 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. Die Regeln für die Benennung von Referenzen in Git finden Sie in der Git-Referenzdokumentation.
  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 für die Produktionsversion Ihrer Looker-Instanz bereitzustellen.

Nachdem Sie einen Commit bereitgestellt haben, markiert der Deployment Manager das Commit als aktuelle Version in Ihrer Looker-Produktionsumgebung.

Mit Webhooks bereitstellen

Bei Projekten mit erweitertem Bereitstellungsmodus können Sie den Webhook für die Bereitstellung verwenden, um Änderungen in der Produktionsumgebung bereitzustellen.

Zum Einrichten des Webhooks müssen Sie zuerst auf der Seite Projekteinstellungen für Ihr Looker-Projekt ein Webhook-Secret hinzufügen. So wird sichergestellt, dass nur autorisierte Parteien den Webhook für die Bereitstellung auslösen können.

Es sind zwei Webhooks für die Bereitstellung von Änderungen in der Produktion mit aktiviertem erweitertem Bereitstellungsmodus verfügbar. Ein Webhook dient zum Bereitstellen des Heads eines Zweigs und der andere zum Bereitstellen eines bestimmten Git-SHA- oder Tag-Tags.

Der Webhook zum Bereitstellen des Heads eines Zweigs verwendet dieses Format:

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

Der Webhook zum Bereitstellen eines Commit-SHA-Tags oder -Tags verwendet dieses 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 zu Ihrer Instanzadresse, dem LookML-Projekt und dem Zweignamen oder Commit-SHA/Tag. Hier sehen Sie einen Beispiel-Webhook, um den Tag-Namen v1.0 für das Projekt e_faa in der Looker-Instanz docsexamples.dev.looker.com bereitzustellen:

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

Mit der API bereitstellen

Bei Projekten mit erweitertem Bereitstellungsmodus können Sie Änderungen an der Looker API in der Produktion bereitstellen.

Damit die API über die API bereitgestellt werden kann, muss sie die Berechtigung deploy haben. Weitere Informationen zur Authentifizierung und Nutzung der Looker API finden Sie auf den Seiten Looker API-Authentifizierung und Erste Schritte mit der API.

Verwenden Sie den deploy_ref_to_production-Endpunkt, um die API bereitzustellen. Dieser Endpunkt kann auf verschiedene Arten aufgerufen werden. Die folgenden Beispiele beziehen sich auf die Methoden HTTPS und SDK.

HTTPS

Ersetzen Sie bei den folgenden Beispielen die Informationen in den spitzen Klammern < > durch die Angaben zu Ihrer Instanzadresse, Ihrem LookML-Projekt, dem Zweignamen, dem SHA-Tag oder dem Tag.

In den folgenden Beispielen wird die HTTPS-Methode verwendet.deploy_ref_to_production Weitere Informationen und Beispiele für manuelles Aufrufen der API mithilfe von CURL-Anfragen finden Sie in der GitHub-Readme zur Authentifizierung bei der API oder über den API Explorer. Sie können den API Explorer über den Looker Marketplace auf Ihrer Looker-Instanz installieren oder eine öffentliche Version im Looker-Entwicklerportal ansehen.

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

Stellen Sie den Kopf eines Zweigs bereit: <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

Wenn Sie die folgenden Beispiele verwenden, müssen die Informationen in den spitzen Klammern < > durch die Informationen für Ihr LookML-Projekt sowie den Zweignamen, das SHA oder das Tag ersetzen.

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

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

Stellen Sie den Kopf eines Zweigs bereit: deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})

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