Erweiterter Bereitstellungsmodus

Bei der Standardeinbindung von Looker Git übertragen die Looker-Entwickler ihre Änderungen in den Entwicklungszweig und führen dann ihren Entwicklungszweig mit dem Produktionszweig zusammen. Bei der Bereitstellung in der Looker-Umgebung verwendet Looker dann das neueste Commit für den Produktionszweig. Auf der Dokumentationsseite Versionsverwaltung und Bereitstellung verwenden finden Sie den Standardgit-Workflow und andere Optionen für erweiterte Git-Implementierungen.

Für erweiterte Git-Implementierungen, bei denen Sie nicht möchten, dass das 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 deploy-Berechtigung ein anderes Commit-SHA- oder Tag für die Bereitstellung in Ihrer Looker-Produktionsumgebung angeben, anstatt den neuesten Commit im Produktionszweig zu verwenden. Wenn Sie ein Commit aus einem anderen Zweig bereitstellen möchten, können Sie den Webhook- oder API-Endpunkt im erweiterten Bereitstellungsmodus verwenden.

Im erweiterten Bereitstellungsmodus können Sie Repositories in Entwicklungsumgebungen mit mehreren Umgebungen konsolidieren, wobei jede Umgebung auf eine andere Version der Codebasis verweist. Außerdem haben damit ein oder mehrere Entwickler oder Administratoren mehr Kontrolle über die Änderungen, die in der Produktionsumgebung bereitgestellt werden.

Wenn der erweiterte Bereitstellungsmodus aktiviert ist, werden Entwickler von der Looker-IDE nicht aufgefordert, ihre Änderungen für die Produktion bereitzustellen. Stattdessen fordert die IDE Entwickler dazu auf, ihre Änderungen im Produktionszweig zusammenzuführen. Von dort aus können Änderungen nur folgendermaßen 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 auf das Symbol Einstellungen klicken.
  2. Klicken Sie im Abschnitt Bereitstellung auf das Kästchen neben Erweiterten Bereitstellungsmodus aktivieren.
  3. Klicken Sie auf die Schaltfläche Projektkonfiguration speichern, um die Änderung zu speichern.

Versionsverwaltung im erweiterten Bereitstellungsmodus

Wenn der erweiterte Bereitstellungsmodus aktiviert ist, ist die Bereitstellung in der Produktion über die Schaltfläche in der IDE für Entwickler nicht mehr möglich. Wenn der Entwickler ein Commit ausführt, wird er durch die Schaltfläche aufgefordert, die Änderungen mit dem primären Zweig zusammenzuführen, anstatt ihn zur Bereitstellung in der Produktion zu veranlassen:

Änderungen werden mithilfe eines Webhooks, der API oder der Deployment Manager-UI in der Looker-IDE in der Produktion bereitgestellt.

Deployment Manager

Bei Projekten mit erweitertem Bereitstellungsmodus können Looker-Entwickler mit der Berechtigung deploy den Deployment Manager in der Looker-IDE verwenden, um ein Commit oder Tag in ihrer Looker-Produktionsumgebung bereitzustellen:

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

Wie im Abschnitt Ein Commit über den Deployment Manager bereitstellen auf dieser Seite beschrieben, können Sie ein Commit mit oder ohne Tag bereitstellen. Wenn Sie ein Commit mit einem Tag bereitstellen, zeigt der Deployment Manager das Tag-SHA an, das sich vom Commit-SHA unterscheidet. Sie können den Commit-Verlauf Ihres Looker-Projekts verwenden, um das mit einem Tag verknüpfte Commit-SHA anzusehen. Wenn Sie ein Commit ohne Tag bereitstellen, zeigt der Deployment Manager das Commit-SHA an, das mit dem Commit-SHA identisch ist, das Sie auf der Schnittstelle 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 gegebenenfalls auch die zugehörigen Commits angezeigt. Außerdem ist angegeben, welcher Commit die aktuelle Version ist, die für die Produktion verwendet wird:

Wenn der Produktionszweig aktuellere Commits als der bereitgestellte Commit hat, zeigt der Deployment Manager diese Informationen und das letzte Commit an, das 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. Klicken Sie zum Bereitstellen eines Commits, der noch nicht bereitgestellt wurde, auf die Schaltfläche Commit auswählen, um aus allen Commits, die mit dem Remote-Produktionszweig zusammengeführt wurden, auszuwählen. Wenn Sie ein Commit aus einem anderen Zweig bereitstellen möchten, verwenden Sie den erweiterten Bereitstellungsmodus Webhook oder API-Endpunkt.
  2. Klicken Sie auf die Schaltfläche Neueste bereitstellen, um das zuletzt zusammengeführte Commit im Remote-Produktionszweig bereitzustellen.
  3. Wenn Sie ein bereits bereitgestelltes Commit oder Tag bereitstellen möchten, klicken Sie im Deployment Manager auf das Dreipunkt-Menü und wählen Sie In Produktion bereitstellen aus.

Wenn Sie ein Commit auswählen, das noch nicht bereitgestellt wurde, wird im Deployment Manager ein Modal wie dieses angezeigt:

  1. Wenn Sie das Commit ohne Zuweisung eines Tags bereitstellen möchten, wählen Sie Ohne Tag bereitstellen aus und klicken Sie auf In Umgebung bereitstellen. Andernfalls lassen Sie die Option Tag and deploy 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 Releasenummer oder einen Versionsnamen. Hinweise zu Git-Tags:

    • Git-Tags müssen im Git-Repository 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. Klicken Sie auf In Umgebung bereitstellen, um das Commit für die Produktionsversion Ihrer Looker-Instanz bereitzustellen.

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

Mit Webhooks bereitstellen

Zum Einrichten des Webhooks zum Bereitstellen müssen Sie zuerst auf der Seite Projekteinstellungen ein Webhook-Secret für Ihr Looker-Projekt 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 Produktionsumgebung mit aktiviertem erweiterten Bereitstellungsmodus verfügbar. Mit einem Webhook wird der Kopf eines Zweigs bereitgestellt und mit dem anderen wird ein bestimmtes Git-SHA- oder -Tag bereitgestellt.

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 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 zu Ihrer Instanzadresse, dem LookML-Projekt und dem Zweignamen oder dem Commit-SHA/Tag. Hier ein Beispiel-Webhook für die Bereitstellung des Tag-Namens v1.0 für das Projekt e_faa auf der Looker-Instanz docsexamples.dev.looker.com:

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

Mit der API bereitstellen

Die Bereitstellung mit der Looker API ist eine Alternative zur Bereitstellung mit einem Webhook, wenn der erweiterte Bereitstellungsmodus aktiviert ist. Für die Bereitstellung über die API benötigt der API-Nutzer, der den Aufruf durchführt, die Berechtigung deploy.

Weitere Informationen zur Authentifizierung und Verwendung der Looker API finden Sie auf den Seiten 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 gelten für die Methoden HTTPS und SDK.

HTTPS

Wenn Sie die folgenden Beispiele verwenden, müssen Sie die Informationen in den spitzen Klammern < > durch die Informationen zu Ihrer Instanzadresse, dem LookML-Projekt, dem Zweignamen, der SHA oder dem Tag ersetzen.

In den folgenden Beispielen wird die HTTPS-Methode anhand des API-Endpunkts deploy_ref_to_production manuell beschrieben. Weitere Informationen und Beispiele für das manuelle Aufrufen der API mithilfe von CURL-Anfragen finden Sie in der GitHub-Readme-Datei How to Authentication to the API (So authentifizieren Sie sich bei der API) oder verwenden Sie den API Explorer. Sie können den API Explorer aus dem Looker Marketplace auf Ihrer Looker-Instanz installieren oder eine öffentliche Version im Entwicklerportal von Looker aufrufen.

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>

Stellen Sie ein Commit-SHA oder ein Tag bereit: <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 Sie die Informationen in den spitzen Klammern < > durch die Informationen ersetzen, die für Ihr LookML-Projekt und den Zweignamen, die SHA oder das Tag relevant sind.

Alternativ können Sie eines der SDKs von Looker verwenden, anstatt manuelle Anfragen an die API zu stellen. SDKs übernehmen die Details der Authentifizierung, Serialisierung von Parametern und Antworten und 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>})

Stellen Sie ein Commit-SHA oder ein Tag bereit: deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})