Firebase Extensions zu Funktions-Kits migrieren

In dieser Anleitung erfahren Sie, wie Sie Ihre Erweiterungen von der eingestellten Firebase Extensions-Umgebung zu einem Funktionskit migrieren, das Sie in Ihrem eigenen Cloud Functions für die Firebase-Codebasis (2. Generation) installieren und bereitstellen können.

Firebase Extensions hat alle Aspekte des Erstellens, Aktualisierens und Entfernens von Erweiterungen verwaltet. Funktions-Kits fassen die Funktionen von Erweiterungen als typische Cloud Functions for Firebase der 2. Generation zusammen. Da Funktionskits Standard-Cloud Functions sind, werden sie mit der Firebase-Befehlszeile in Ihrem Firebase-Projekt erstellt, aktualisiert, gelöscht und Fehler behoben. In diesem Leitfaden erfahren Sie, wie Sie Ihre Funktionen verwalten und Updates übernehmen können, sobald sie verfügbar sind.

In dieser Anleitung wird die Erweiterung Stream Cloud Firestore to BigQuery (firestore-bigquery-export) als Beispiel verwendet, um die Befehle und die Befehlsausgabe für jeden Migrationsschritt zu veranschaulichen.

Migrationspfad festlegen

Firebase empfiehlt allen Firebase Extensions-Publishern, Ersatz für ihre Erweiterungen in Form von Funktions-Kits zu erstellen, die auf npm veröffentlicht werden. Sie haben mehrere Möglichkeiten, um zu prüfen, ob ein Ersatz für das Funktions-Kit für Ihre Erweiterungen verfügbar ist:

  • Rufen Sie die Seite „Erweiterungen“ der Firebase Console für Ihr Projekt auf. Für jede installierte Erweiterung wird angezeigt, ob ein Ersatz für das Funktionskit verfügbar ist.
  • Führen Sie firebase ext:list in Ihrem Firebase-Projekt in einem Terminal aus, um zu sehen, für welche Ihrer installierten Erweiterungen es offizielle Ersatzprodukte gibt:

    firebase ext:list --project my-project
    
    i  extensions: ensuring required API firebaseextensions.googleapis.com is enabled...
    ✔  extensions: required API firebaseextensions.googleapis.com is enabled
    i  extensions: list of extensions installed in my-project:
    ┌────────────────────────────────────┬───────────┬────────────────────────────────┬────────┬─────────┬─────────────────────┬───────────────────────────────────────────────────┐
    │ Extension                          │ Publisher │ Instance ID                    │ State  │ Version │ Your last update    │ Replacement Kit                                   │
    ├────────────────────────────────────┼───────────┼────────────────────────────────┼────────┼─────────┼─────────────────────┼───────────────────────────────────────────────────┤
    │ firebase/firestore-bigquery-export │ firebase  │ firestore-bigquery-export-zbrp │ ACTIVE │ 0.3.2   │ 2026-06-10 18:35:03 │ @firebase-function-kits/firestore-bigquery-export │
    ├────────────────────────────────────┼───────────┼────────────────────────────────┼────────┼─────────┼─────────────────────┼───────────────────────────────────────────────────┤
    │ firebase/storage-resize-images     │ firebase  │ storage-resize-images          │ ACTIVE │ 0.3.6   │ 2026-06-03 17:41:24 │                                                   │
    └────────────────────────────────────┴───────────┴────────────────────────────────┴────────┴─────────┴─────────────────────┴───────────────────────────────────────────────────┘
    ⚠ Notice: Firebase Extensions will shut down on March 31, 2027. Learn more: https://firebase.google.com/docs/extensions/faq-and-troubleshooting
    

Wenn für Ihre Erweiterung ein offizieller Ersatz für Funktions-Kits verfügbar ist, können Sie sie mithilfe des Abschnitts Zu Funktions-Kits auf npm migrieren migrieren.

Wenn Sie keinen veröffentlichten Ersatz finden, können Sie den Erweiterungscode forken und selbst einen Ersatz erstellen, da alle Erweiterungen Open Source sind. Folgen Sie dazu der Anleitung Zu einem selbst erstellten Funktions-Kit migrieren.

Migrationspfad auswählen: Zu Funktionskits auf npm migrieren Zu einem selbst erstellten Funktionskit migrieren

Zu Funktions-Kits auf npm migrieren

Bekannte Einschränkungen bei der Migration prüfen

Bevor Sie mit der Migration einer Erweiterungsinstanz beginnen, prüfen Sie, ob in Ihrer Einrichtung eine der folgenden Funktionen verwendet wird, für die eine Problemumgehung erforderlich ist oder die in Funktionskits noch nicht unterstützt werden:

  • Für benutzerdefinierte Docker-Repositories und KMS-Schlüssel ist eine manuelle Umgehung erforderlich Cloud Functions for Firebase unterstützt keine Ersatzsystemparameter zum Konfigurieren eines benutzerdefinierten Docker-Repositorys oder eines kundenverwalteten Verschlüsselungsschlüssels (KMS-Schlüssel). Wenn Ihre Erweiterung einen dieser Parameter konfiguriert, lesen Sie den FAQ-Workaround.

Hinweis

Sie müssen die Firebase-Befehlszeile einrichten und ein Firebase-Projekt initialisieren. Wenn Sie die CLI verwenden, achten Sie darauf, dass Sie die firebase-tools-Version >= 15.32.0 verwenden, die die neuen Migrations- und Funktionskit-Befehle enthält.

Erforderliche Kontoberechtigungen und ‑rollen

Je nachdem, was während der Migration von der Firebase-Befehlszeile erstellt und konfiguriert werden muss, muss das Konto, mit dem Sie sich bei Firebase und Google Cloud authentifizieren, die folgenden Rollen haben:

  • roles/firebaseextensions.editor
  • roles/cloudbuild.builds.editor
  • roles/artifactregistry.writer
  • roles/run.developer
  • roles/iam.serviceAccountUser
  • roles/iam.serviceAccountCreator
  • roles/cloudfunctions.admin (wenn Sie setIamPermissions für öffentliche Endpunkte ausführen müssen)
  • roles/secretmanager.admin (bei Verwendung von Secrets)
  • roles/serviceusage.serviceUsageAdmin (wenn Sie neue APIs aktivieren müssen)

Wir empfehlen, ein Konto zu verwenden, in dem bereits Erweiterungen installiert und Funktionen bereitgestellt wurden, da die meisten dieser Berechtigungen dann bereits erteilt wurden. Wenn für Ihr Migrationskonto weitere Rollen erforderlich sind, folgen Sie der Google Cloud-IAM-Anleitung, um sie hinzuzufügen.

CLI-Workflow auswählen

Wenn Sie von einer Erweiterungsinstanz zu einem auf npm verfügbaren Funktions-Kit migrieren möchten, haben Sie folgende Möglichkeiten:

  • (Empfohlen) Mit dem ext:migrate-CLI-Befehl migrieren. Mit diesem Befehl wird das Ersatz-Funktions-Kit bereitgestellt, bevor die Erweiterung deinstalliert wird, die es ersetzt.
  • Migrieren Sie mit den CLI-Befehlen für Funktionskits. Sie können separate Befehle verwenden, um Ihre Erweiterung zu aktualisieren, ein Funktionskit zu installieren, es wie die Erweiterung zu konfigurieren, das Kit bereitzustellen und die Erweiterung zu deinstallieren. So haben Sie mehr Flexibilität beim Anordnen von Befehlen oder bei der Ausführung zusätzlicher Aufgaben zwischen den Schritten.

Mit ext:migrate migrieren

Starten Sie die Migration einmal pro Erweiterungsinstanz mit folgendem Befehl:

firebase ext:migrate --project <project-id>

Dieser Befehl führt Sie durch:

  1. Sie wählen eine Erweiterung zur Migration aus, für die ein offizielles Funktionskit als Ersatz verfügbar ist.
  2. Sie wählen eine bestimmte Instanz dieser Erweiterung aus.
  3. Aktualisieren Sie die Erweiterung bei Bedarf auf die neueste Version.
  4. Installieren des Funktionskits und Konfigurieren einer Instanz identisch mit der Konfiguration der Erweiterungsinstanz.
  5. Funktions-Kit bereitstellen
  6. Prüfen, ob das Funktionskit erfolgreich bereitgestellt wurde und ob alle Lebenszyklus-Hooks (falls vorhanden) ausgeführt wurden.
  7. Deinstallieren der Erweiterungsinstanz

Wenn Sie die Erweiterung oder Erweiterungsinstanz kennen, die Sie migrieren möchten, geben Sie sie mit den folgenden Befehlszeilen-Flags an:

firebase ext:migrate --extension firebase/firestore-bigquery-export --project <project-id>

# or

firebase ext:migrate --ext-instance firestore-bigquery-export-abcd --project <project-id>

Wenn Sie das Paket kennen, zu dem Sie migrieren möchten, insbesondere wenn es sich nicht um ein offizielles Ersatzpaket handelt, das von Google aufgeführt wird, geben Sie es mit dem Flag --package an:

firebase ext:migrate --ext-instance firestore-bigquery-export-abcd --package @firebase-function-kits/firestore-bigquery-export --project <project-id>

Deployment eines Funktionskits überprüfen

Prüfen Sie die Bereitstellungsprotokolle, um festzustellen, ob Lebenszyklus-Hooks ausgelöst wurden und ob die firebase deploy des Kits fehlerfrei war. Beliebte Erweiterungen wie „Stream Cloud Firestore to BigQuery“ verwenden Lebenszyklus-Hooks. Das folgende Beispiel zeigt, wie ein Lebenszyklus-Hook aussieht, wenn er ausgelöst wird:

i  functions: Executing afterFirstDeploy lifecycle hook targeting: kit-firestore-bigquery-export-initBigQuerySync...
✔  functions: Successfully queued task for lifecycle hook kit-firestore-bigquery-export-initBigQuerySync in queue projects/my-project/locations/europe-west1/queues/kit-firestore-bigquery-export-initBigQuerySync.
i  functions: View logs for afterFirstDeploy at: https://console.cloud.google.com/logs/query;query=resource.type%3D%22cloud_run_revision%22%0Aresource.labels.service_name%3D%22kit-firestore-bigquery-export--initbigquerysync%22%0Aresource.labels.location%3D%22europe-west1%22;project=my-project

Diese Logmeldungen bestätigen Folgendes:

  • Ein Lifecycle-Hook wurde gefunden und ausgeführt.
  • Eine Aufgabe wurde in die zugehörige Aufgabenwarteschlange des Lebenszyklus-Hooks eingereiht.
  • Es wurde ein Link zu Cloud Logging bereitgestellt, damit Sie prüfen können, ob die Aufgabe ohne Fehler abgeschlossen wurde.

Klicken Sie auf den Link zu den Logs in der Google Cloud-Konsole, um zu prüfen, ob die Logs Fehler enthalten und ob das Ereignis in der Aufgabenwarteschlange erfolgreich verarbeitet wurde. Wenn das Lifecycle-Event nicht erfolgreich ausgeführt wurde, können Sie es mit dem folgenden Befehl noch einmal auslösen:

firebase functions:lifecycle:run <hook-name> <codebase>

Wenn Sie eine Function Kit-Instanz zum ersten Mal bereitstellen, führen Sie Folgendes aus:

firebase functions:lifecycle:run afterFirstDeploy <kit-instance-id>

Wenn Sie die Migration während der Validierung beenden oder rückgängig machen möchten, können Sie das Kit gemäß der Anleitung unter Erweiterung deinstallieren deinstallieren.

README des Funktions-Kits lesen

Für einige Kits sind möglicherweise zusätzliche Arbeiten erforderlich, die nicht automatisch von Funktionskits erledigt werden. Sehen Sie sich die README für das Kit an, das Sie installieren, und folgen Sie allen zusätzlichen Anweisungen.

Mit der CLI für Funktionskits migrieren

Bevor Sie beginnen, müssen Sie die Instanz-ID der Erweiterung, die Sie zu einem Kit migrieren möchten, und den npm-Paketnamen des Ersatzkits ermitteln und notieren. Beide finden Sie in der Ausgabe von firebase ext:list. Ein Beispiel für die Verwendung von ext:list finden Sie unter Migrationspfad ermitteln.

1. Upgrade Ihrer Erweiterungsinstanz auf die neueste Version

Sie müssen Ihre Erweiterung auf die neueste Version aktualisieren, um den Unterschied zwischen Ihrer Erweiterungsinstanz und dem Ersatzkit zu minimieren. Wenn Ihre Erweiterung nicht aktualisiert wird, kann es zu erheblichen, schwerwiegenden Änderungen zwischen Ihrer Erweiterungsinstanz und dem Ersatz-Kit kommen. Die exportierte Konfiguration stimmt möglicherweise nicht mit den Erwartungen des Kits überein, da sich die Parameter zwischen den Versionen geändert haben.

Verwenden Sie eine der folgenden Optionen, um Ihre Erweiterung zu aktualisieren, je nachdem, wo sie installiert wurde:

  • Über die Firebase-Konsole
  • Über die Firebase-Befehlszeile mit:
    • firebase ext:update <extension-instance-id> --project <project-id> firebase deploy --only extensions --project <project-id>

Wenn Sie diesen Schritt überspringen, werden Sie von der CLI aufgefordert, die Konfiguration zu aktualisieren, wenn Sie sie exportieren und Ihre Erweiterung nicht die neueste Version hat.

2. Ersatz-Funktions-Kit-Instanz prüfen und installieren

Sie können das Funktionskit mit dem folgenden CLI-Befehl installieren:

firebase functions:kits:install --template migration --no-configure --package <npm-package-name> --project <project-id>

Wenn Sie bei der Installation eine Instanz-ID für Ihr Kit auswählen, notieren Sie sie sich, damit Sie sie später in der Migrationsanleitung verwenden können.

Nach der Installation des Kits wird in Ihrem Firebase-Projekt ein neues Verzeichnis mit einem Speicherort wie function-kits/<kit-name>/source erstellt. Es enthält das npm-Paket mit dem Kit, das Ihre Erweiterung ersetzt, und eine einfache index.ts-Datei, in der diese Funktionen für Firebase exportiert werden, um eine benutzerdefinierte Konfiguration bereitzustellen und festzulegen.

Lesen Sie die README-Datei für das Kit und folgen Sie allen dort aufgeführten zusätzlichen Anleitungen.

Wenn Sie mehrere Instanzen des Kits im selben Projekt haben, können Sie diesen Befehl wiederholen, um neue Instanzen desselben Kits zu erstellen. Sie können auch eine einzelne Kit-Instanz in zwei verschiedenen Firebase-Projekten mit unterschiedlichen Konfigurationen bereitstellen, z. B. in einem Staging- und einem Produktionsprojekt. Weitere Informationen zu diesen erweiterten Setups finden Sie unter Erweiterte Migrationen.

Beispiel:

firebase functions:kits:install --template migration --no-configure --package @firebase-function-kits/firestore-bigquery-export --project my-project

3. Funktionskit-Instanz identisch mit der Erweiterung konfigurieren

Sie müssen diese Kit-Instanz mit einer Konfiguration anpassen, die mit der Erweiterung identisch ist, die sie ersetzt. Sie können die Konfiguration Ihrer Erweiterungsinstanz in eine .env-Datei exportieren, in der Konfigurationsdaten für Parameter, Umgebungsvariablen und geheime Verweise für alle Cloud Functions, einschließlich Kits, gespeichert werden. So exportieren Sie sie direkt in die Konfigurationsdatei Ihres Kits:

firebase ext:export --mode functions --instance <extension-instance-id> --kit-instance <kit-instance-id> --project <project-id>

Am Ende dieses Schritts werden die Konfigurationsinformationen für diese Instanz in einer projektspezifischen .env-Datei in Ihrem Instanzkonfigurationsverzeichnis gespeichert, z. B.: function-kits/<kit-name>/config-<instance-id>/.env.<project-id>

4. Kit-Ersatz bereitstellen und überprüfen

Nachdem das Kit installiert und als Funktionssatz verfügbar ist, können Sie den Kit-Ersatz bereitstellen. Funktionskits funktionieren wie Standardfunktionen. Jede Kit-Instanz dient als separate Codebasis zum Organisieren Ihrer Funktionen. Sie können alle Ihre Funktionen oder nur eine bestimmte Kit-Instanz bereitstellen. Wenn Sie eine einzelne Erweiterungsinstanz migrieren, stellen Sie nur diese Kit-Instanz bereit.

Wenn in Ihrem Kit neue Parameter verwendet werden, die in der migrierten Erweiterungsinstanz nicht vorhanden waren, werden Sie von der Firebase CLI zu Beginn des Bereitstellungsprozesses dazu aufgefordert. Das ist in diesem Beispiel mit einer aktuellen firestore-bigquery-export-Erweiterung nicht zu erwarten. Bei vielen Kits wird jedoch für jede Ereignistriggerquelle, die vom Kit verwendet wird, ein neuer Parameter angefordert. Im Rahmen dieser Migration werden in aktualisierten Kits Funktionen der 2. Generation verwendet, während in Erweiterungen zuvor Funktionen der 1. Generation verwendet wurden. In der 2. Generation befinden sich Funktionen in der Nähe ihrer Ereignisquellen und werden als zusätzlicher Parameter hinzugefügt. Wenn in zukünftigen Updates neue Parameter hinzugefügt werden, werden Sie bei der nächsten Bereitstellung von der CLI dazu aufgefordert.

Beispiel:

firebase deploy --only functions:firestore-bigquery-export --project my-project

Ausgabe:

=== Deploying to 'my-project'...
i  deploying functions
i  functions: Loaded environment variables from function-kits/firestore-bigquery-export/config-firestore-bigquery-export/.env.my-project
i  functions: ensuring required API bigquery.googleapis.com is enabled...
i  functions: ensuring required API cloudtasks.googleapis.com is enabled...
✔  functions: required APIs are enabled
i  functions: granting declarative IAM roles to managed service account:
   - BigQuery Data Editor
   - BigQuery User
   - Cloud Datastore User
   - Eventarc Event Receiver
   - roles/run.invoker
✔  functions: successfully granted IAM roles
i  functions: creating Node.js 22 (2nd Gen) function kit-firestore-bigquery-export-fsexportbigquery(us-central1)...
i  functions: creating Node.js 22 (2nd Gen) function kit-firestore-bigquery-export-initBigQuerySync(us-central1)...
i  functions: creating Node.js 22 (2nd Gen) function kit-firestore-bigquery-export-setupBigQuerySync(us-central1)...
✔  functions[kit-firestore-bigquery-export-fsexportbigquery(us-central1)] Successful create operation.
✔  functions[kit-firestore-bigquery-export-initBigQuerySync(us-central1)] Successful create operation.
✔  functions[kit-firestore-bigquery-export-setupBigQuerySync(us-central1)] Successful create operation.
i  functions: Executing afterFirstDeploy lifecycle hook targeting: kit-firestore-bigquery-export-initBigQuerySync...
✔  functions: Successfully queued task for lifecycle hook kit-firestore-bigquery-export-initBigQuerySync in queue projects/my-project/locations/us-central1/queues/kit-firestore-bigquery-export-initBigQuerySync.
✔  Deploy complete!

Prüfen Sie die Bereitstellungsprotokolle, um festzustellen, ob Lebenszyklus-Hooks ausgelöst wurden und ob die firebase deploy des Kits fehlerfrei war. Beliebte Erweiterungen wie „Stream Cloud Firestore to BigQuery“ verwenden Lebenszyklus-Hooks. Das folgende Beispiel zeigt, wie ein Lebenszyklus-Hook aussieht, wenn er ausgelöst wird:

i  functions: Executing afterFirstDeploy lifecycle hook targeting: kit-firestore-bigquery-export-initBigQuerySync...
✔  functions: Successfully queued task for lifecycle hook kit-firestore-bigquery-export-initBigQuerySync in queue projects/my-project/locations/europe-west1/queues/kit-firestore-bigquery-export-initBigQuerySync.
i  functions: View logs for afterFirstDeploy at: https://console.cloud.google.com/logs/query;query=resource.type%3D%22cloud_run_revision%22%0Aresource.labels.service_name%3D%22kit-firestore-bigquery-export--initbigquerysync%22%0Aresource.labels.location%3D%22europe-west1%22;project=my-project

Diese Logmeldungen bestätigen Folgendes:

  • Ein Lifecycle-Hook wurde gefunden und ausgeführt.
  • Eine Aufgabe wurde in die zugehörige Aufgabenwarteschlange des Lebenszyklus-Hooks eingereiht.
  • Es wurde ein Link zu Cloud Logging bereitgestellt, damit Sie prüfen können, ob die Aufgabe ohne Fehler abgeschlossen wurde.

Klicken Sie auf den Link zu den Logs in der Google Cloud-Konsole, um zu prüfen, ob die Logs Fehler enthalten und ob das Ereignis in der Aufgabenwarteschlange erfolgreich verarbeitet wurde. Wenn das Lifecycle-Event nicht erfolgreich ausgeführt wurde, können Sie es mit dem folgenden Befehl noch einmal auslösen:

firebase functions:lifecycle:run <hook-name> <codebase>

Wenn Sie eine Function Kit-Instanz zum ersten Mal bereitstellen, führen Sie Folgendes aus:

firebase functions:lifecycle:run afterFirstDeploy <kit-instance-id>

Wenn Sie die Migration während der Validierung beenden oder rückgängig machen möchten, können Sie das Kit gemäß der Anleitung unter Erweiterung deinstallieren deinstallieren.

5. Erweiterung deinstallieren

Nachdem Sie Ihr bereitgestelltes Funktionskit überprüft haben, können Sie Ihre Erweiterung deinstallieren, damit das Verhalten nicht einmal für das Kit und einmal für die Erweiterung dupliziert wird. Sie können alle Erweiterungen mit der Firebase-CLI deinstallieren, unabhängig davon, wie Sie sie installiert haben, wenn Sie das Flag --immediate übergeben:

firebase ext:uninstall <extension-instance-id> --project <project-id> --immediate

Beispiel:

firebase ext:uninstall firestore-bigquery-export --project my-project --immediate

Ausgabe:

i  extensions: uninstalling firestore-bigquery-export...
i  extensions: deleting extension instance resources in project my-project...
✔  extensions: successfully uninstalled firestore-bigquery-export

Erweiterte Migrationen

Sie können Erweiterungen in mehreren Firebase-Projekten haben, die Sie mit einer einzigen Codebasis verwalten möchten. Wenn Sie beispielsweise dieselbe Infrastruktur in einer testing-Umgebung und einer production-Umgebung bereitstellen, die jeweils eine documents-Cloud Firestore-Instanz haben, die Sie nach BigQuery exportieren, haben Sie möglicherweise zwei Instanzen der Erweiterung firestore-bigquery-export installiert:

  • export-documents-testing
  • export-documents-production

Wenn Sie diese beiden Erweiterungsinstanzen in einem einzigen Codebestand in zwei Funktionskit-Instanzen migriert haben, während Sie mit der Firebase CLI gearbeitet und die Bereitstellung mit firebase deploy --project testing und firebase deploy --project production vorgenommen haben, werden bei jeder Bereitstellung zwei Instanzen in den Umgebungen testing und production erstellt.

Ersetzen Sie die beiden Erweiterungsinstanzen stattdessen durch eine Funktionskit-Instanz von firestore-bigquery-export, die in mehreren Projekten bereitgestellt wird. Jedes Projekt hat dabei seine eigene Konfiguration. Das Konfigurationsverzeichnis für die Instanz sollte so aussehen:

  • config-export-documents/
    • .env.testing
    • .env.production

Bei jeder Bereitstellung in testing und production wird eine Instanz Ihres Kits mit der entsprechenden Konfiguration erstellt. Die vorhandenen CLI-Befehle erstellen diese Einrichtung, sofern Sie das Flag --project bei jedem Aufruf von ext:migrate oder functions:kits:install übergeben.

Beispiel:

firebase functions:kits:install --package @firebase-function-kits/firestore-bigquery-export --project testing --no-configure --template migration
✔ What would you like to name this kit? firestore-bigquery-export
✔ What would you like to name this instance? export-documents
✔  Wrote function-kits/firestore-bigquery-export/source/package.json
✔  Wrote function-kits/firestore-bigquery-export/source/tsconfig.json
✔  Wrote function-kits/firestore-bigquery-export/source/.gitignore
✔  Wrote function-kits/firestore-bigquery-export/source/src/index.ts
i  functions: Running npm install
✔  Wrote configuration info to firebase.json
✔  functions: Function kit firestore-bigquery-export successfully installed.
# This creates the export-documents instance with an empty .env.testing file
# for the testing project. Now populate it via export:
firebase ext:export --mode functions --instance export-documents-testing \
  --kit-instance export-documents --project testing

# Repeat the export for production into the same kit instance to create
# .env.production from the export-documents-prod instance:
firebase ext:export --mode functions --instance export-documents-prod \
  --kit-instance export-documents --project production

Sie haben jetzt eine einzelne Kit-Instanz konfiguriert, die mit den jeweiligen Konfigurationen in Ihren Projekten testing und production bereitgestellt werden kann. Wenn Sie eine Instanz im Projekt testing erstellen und den Befehl functions:kits:install für dasselbe Paket im Projekt production ausführen, werden Sie aufgefordert, die für testing konfigurierte Instanz wiederzuverwenden oder eine zweite Instanz zu installieren.