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.