Documentation de référence sur les commandes de la CLI Firebase pour Data Connect

La CLI Firebase est un outil qui vous permet de gérer et de configurer Firebase produits et services à partir de la ligne de commande.

La CLI fournit des commandes qui peuvent être utilisées pour effectuer diverses Data Connect tâches (par exemple, créer un Data Connect) en initialisant le répertoire de travail local correspondant, en configurant Émulateur Data Connect, listant Data Connect ressources, la génération de SDK clients, etc.

Commandes de configuration

Ajouter Data Connect à un projet Firebase

Firebase init

Utilisez firebase init pour configurer une nouvelle configuration de projet local. Ce workflow crée ou met à jour des fichiers de configuration Firebase dans votre répertoire.

firebase init

Le flux firebase init vous guide dans la configuration d'un service et d'une base de données, et éventuellement dans l'installation de l'émulateur Data Connect et la configuration des SDK générés.

Configuration du service et de la base de données

Si vous sélectionnez dataconnect pour la configuration du produit, la CLI vous invite à indiquer un nouveau nom et un nouvel emplacement de service, et à associer une instance Cloud SQL pour PostgreSQL existante ou à en créer une.

Si une instance existante est associée, la CLI recherche des paramètres compatibles, tels que comme l'authentification IAM et les adresses IP publiques.

Configuration de Local Emulator Suite

Le flux de la CLI propose de configurer des émulateurs, y compris l'émulateur Data Connect.

Commandes de l'émulateur Data Connect

Démarrer l'émulateur Data Connect

émulateurs:start/exec

firebase emulators:start/exec

Utiliser la version Local Emulator Suite de l'émulateur Data Connect en mode interactif avec start ou en mode non interactif basé sur un script, avec exec

Commandes de gestion des schémas et des connecteurs

Cette section contient des informations de référence sur la CLI pour les commandes que vous utilisez pour gérer les schémas et les connecteurs.

Pour connaître les cas d'utilisation et les bonnes pratiques à suivre concernant ces commandes, consultez le guide de gestion des schémas et des connecteurs.

Déployer des ressources de schéma et de connecteur

déployer

firebase deploy

Cette commande déploie des ressources pour les services Data Connect indexés dans firebase.json. Une migration de schéma est effectuée si nécessaire.

Commande Description

firebase deploy

Option Description

– DataConnect uniquement

Déployez des schémas et des connecteurs pour tous les services Data Connect de ce projet, mais ne déployez pas d'autres ressources de produits Firebase.

–-only dataconnect:serviceId

Déployez le schéma et les connecteurs pour le service Data Connect spécifié.

–-only dataconnect:serviceId:connectorId

Déployez un seul connecteur pour le service Data Connect spécifié.

–-only dataconnect:serviceId:schema

Déployez le schéma pour le service Data Connect spécifié.

Avec les options –-only, vous pouvez transmettre des valeurs séparées par une virgule pour déployer tout un sous-ensemble de ressources souhaité.

firebase deploy --only dataconnect:service1:schema,dataconnect:service2

Répertorier les services, schémas et connecteurs Data Connect

dataconnect:services:list

firebase dataconnect:services:list

Cette commande affiche des informations de base sur les services, schémas et connecteurs déployés sur un projet.

Comparer et migrer des schémas SQL

dataconnect:sql:diff

firebase dataconnect:sql:diff

Cette commande compare le schéma local d'un service au schéma actuel de la base de données Cloud SQL correspondante. Il affiche les commandes à exécuter pour migrer la base de données vers votre nouveau schéma.

Commande Description

firebase dataconnect:sql:diff

Indicateur/Paramètre Description

ID du service

Spécifiez le service. En cas d'omission, imprimez la diff pour tous les services dans le fichier firebase.json.

dataconnect:sql:migrer

firebase dataconnect:sql:migrate

Cette commande applique les modifications de schéma locales à la base de données Cloud SQL d'un service.

Lorsque vous configurez un nouveau projet Data Connect local, avec le projet dataconnect.yaml, le comportement de la commande dataconect:sql:migrate est de vous inviter à effectuer les modifications requises, puis de lui demander avant de les exécuter. Vous pouvez modifier ce comportement pour toujours Incluez ou ignorez les modifications facultatives en mettant à jour votre dataconnect.yaml. configuration, comme indiqué dans la section Migrer un schéma en mode strict ou compatible.

Dans les environnements interactifs, la CLI affiche chaque instruction SQL de migration. (et s'il est destructeur) et vous invite à effectuer les modifications à appliquer. Transmettre l'indicateur --force équivaut à accepter toutes les invites.

Dans les environnements non interactifs :

  • sans --force, seules les modifications non destructives sont effectuées. En cas de modifications destructives, la CLI s'arrête et aucune modification n'est apportée.
  • avec --force, toutes les modifications sont effectuées. Si des modifications destructives sont incluses, elles sont imprimées et vous êtes invité à continuer, sauf si l'indicateur --force est fourni.
Commande Description

firebase dataconnect:sql:migrate

Option Description

ID du service

Migrez la base de données pour le service spécifié. La valeur "serviceId" est inférées si votre projet ne comporte qu'un seul service.

–-force

Accepter automatiquement les requêtes

Comme pour les autres indicateurs --only, vous pouvez fournir plusieurs services séparés par des virgules.

Migrer un schéma en mode strict ou compatible

Les migrations de schéma Data Connect comportent deux modes de validation de schéma différents : strict et compatible. La validation en mode strict nécessite que le schéma de base de données correspondant exactement au schéma de l'application avant que de base peut être déployé. La validation en mode compatible nécessite que la base de données schéma doit être compatible avec le schéma de l'application, c'est-à-dire que les éléments de votre qui ne sont pas utilisées par le schéma de votre application ne sont pas modifiées.

Ces modes de validation de schéma et bonnes pratiques pour la migration de schéma sont dans le guide de gestion des schémas et des connecteurs.

Le mode de validation est défini à l'aide de la clé schemaValidation dans votre fichier dataconnect.yaml. Si schemaValidation n'est pas spécifié, la CLI applique les modifications compatibles et vous invite avant d'exécuter les modifications strictes. Consultez la documentation de référence sur la configuration.

Commandes du SDK

Générer des SDK

dataconnect:sdk:generate

firebase dataconnect:sdk:generate

Cette commande génère les SDK typés déclarés dans connector.yaml.

Consultez également les guides d'utilisation des SDK Web. SDK Android et SDK iOS.

Commande Description

firebase dataconnect:sdk:generate

Option Description

–-watch

Maint le processus en cours d'exécution et génère de nouveaux SDK chaque fois que vous enregistrez des modifications apportées à votre schéma et à vos fichiers GQL de connecteur.

Si la génération échoue, les erreurs sont affichées dans stdout, le code généré ne sont pas modifiés et la commande continue de s'exécuter.

–-only connectorId:platform

Ne générez des SDK que pour une plate-forme et un connecteur uniques.

Les options –only vous permettent de transmettre des valeurs séparées par une virgule.

firebase dataconnect:sdk:generate –-only connector1, connector1:kotlin

Commandes de gestion Cloud SQL

Accorder des rôles SQL pour Cloud SQL

dataconnect:sql:grant

firebase dataconnect:sql:grant

Cette commande attribue un rôle utilisateur PostgreSQL à l'utilisateur ou au compte de service spécifié :

  • Lecteur: peut lire les données des tables du schéma.
  • Écrivain : peut lire et écrire dans les tables du schéma.
  • Propriétaire : peut effectuer des migrations et modifier le schéma. Cela n'inclut pas l'autorisation d'installer des extensions.
Commande Description

firebase dataconnect:sql:grant

Indicateur/Paramètre Description

-R, --role rôle

Rôle SQL à attribuer : propriétaire, rédacteur ou lecteur.

-E, --email email_address

Adresse e-mail d'un utilisateur ou d'un compte de service auquel attribuer le rôle.

Options globales

Les options globales suivantes s'appliquent à toutes les commandes:

  • --json convertit la sortie de la CLI au format JSON pour l'analyse par d'autres outils.
  • Remplacement de --noninteractive et --interactive, si nécessaire, automatique pour détecter les environnements non-TTY.