Cette page explique comment déployer des applications sur Firebase à l'aide de Cloud Build. Si vous débutez avec Cloud Build, commencez par lire les Guides de démarrage rapide et la Présentation de la configuration des compilations first.
Avant de commencer
Activez les API Cloud Build, Firebase et Resource Manager.
Rôles requis pour activer les API
Pour activer les API, vous avez besoin du rôle IAM Administrateur d'utilisation du service (
roles/serviceusage.serviceUsageAdmin), qui contient l'autorisationserviceusage.services.enable. Découvrez comment attribuer des rôles.
Pour exécuter les
gcloudcommandes sur cette page, installez la Google Cloud CLI.Gardez à portée de main le code source de votre application ainsi que le fichier
firebase.json. Votre code source doit être stocké dans un dépôt, tel que Cloud Source Repositories, GitHub ou Bitbucket.Si vous n'avez pas encore de projet à déployer sur Firebase, vous pouvez créer un projet par défaut en installant et en initialisant Firebase.
Autorisations IAM requises
-
Dans la Google Cloud console, accédez à la settings Cloud Build Permissions page :
Sélectionnez le compte de service pour votre compilation.
Définissez l'état des rôles suivants sur Activé :
- Compte de service Cloud Build | Permet à l'ancien compte de service Cloud Build de mettre à jour les compilations, d'écrire des journaux de compilation et de stocker des artefacts de compilation.
- Administrateur Firebase | Permet à Cloud Build d'accéder à Firebase.
- Lecteur de clés API | Permet à Cloud Build d'accéder à la configuration Firebase Hosting actuelle lors du déploiement de la compilation.
Utiliser l'image Docker firebase
Cloud Build fournit une image de compilateur que vous pouvez utiliser pour appeler des commandes firebase dans Cloud Build. Pour utiliser ce compilateur dans un fichier de configuration Cloud Build, vous pouvez utiliser l'étape de compilation firebase pour effectuer un déploiement sur Firebase :
Créez un fichier de configuration de compilation nommé
cloudbuild.yamloucloudbuild.jsonoù PROJECT_ID correspond à votre Google Cloud ID de projet et FIREBASE_PROJECT_ID est votre ID de projet Firebase :YAML
steps: - name: "us-docker.pkg.dev/firebase-cli/us/firebase" args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting'] ## Or, target a specific version of firebase-tools - name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']JSON
{ "steps": [ { "name": "us-docker.pkg.dev/firebase-cli/us/firebase", "args": [ "deploy", "--project", "FIREBASE_PROJECT_ID", "--only", "hosting" ] } ] }Vous pouvez choisir une version spécifique de
firebase-toolsen utilisant
name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.zLancez la compilation à l'aide du fichier de configuration de compilation :
gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORYOù :
- REGION correspond à l'une des régions de compilation compatibles.
- CONFIG_FILE_PATH est le chemin d'accès du fichier de configuration de compilation.
- SOURCE_DIRECTORY est le chemin d'accès ou l'URL du code source.
Déploiement continu
Vous pouvez automatiser le déploiement de votre logiciel dans Firebase en créant des déclencheurs Cloud Build. Vous pouvez configurer des déclencheurs pour créer et déployer des images chaque fois que vous mettez à jour votre code source.
Pour automatiser votre déploiement sur Firebase :
Dans votre dépôt, ajoutez un fichier de configuration de compilation avec des étapes pour appeler la
firebase deploycommande où PROJECT_ID correspond à l'ID de votre Google Cloud projet :YAML
steps: - name: us-docker.pkg.dev/firebase-cli/us/firebase args: ['deploy', '--project=PROJECT_ID', '--only=hosting']JSON
{ "steps": [ { "name": "us-docker.pkg.dev/firebase-cli/us/firebase", "args": [ "deploy", "--project", "PROJECT_ID", "--only", "hosting" ] } ] }Créez un déclencheur avec le fichier de configuration de compilation créé à l'étape précédente :
Ouvrez la page Déclencheurs dans la Google Cloud console :
Sélectionnez votre projet dans le menu déroulant du sélecteur de projet, en haut de la page.
Cliquez sur Ouvrir.
Cliquez sur Créer un déclencheur.
Sur la page Créer un déclencheur, saisissez les paramètres suivants :
Nommez votre déclencheur.
Sélectionnez l'événement de dépôt pour démarrer le déclencheur.
Sélectionnez le dépôt contenant le code source et le fichier de configuration de compilation.
Indiquez l'expression régulière correspondant au nom de la branche ou du tag qui démarrera votre déclencheur.
Configuration : sélectionnez le fichier de configuration de compilation créé précédemment.
Cliquez sur Créer pour enregistrer le déclencheur de compilation.
Chaque fois que vous transmettez du nouveau code dans votre dépôt, vous lancez automatiquement une compilation et un déploiement dans Firebase.
Pour en savoir plus sur la création de déclencheurs Cloud Build, consultez la page Créer et gérer des déclencheurs de compilation.
Exemple de code
Pour afficher un exemple de code pour le déploiement sur Firebase à l'aide de Cloud Build, accédez à deploy-firebase-example.
Étape suivante
- Découvrez comment effectuer des déploiements bleu/vert sur Compute Engine.
- Apprenez à déployer sur Cloud Run.
- Apprenez à déployer sur GKE.
- Apprenez à déployer sur des fonctions Cloud Run.
- Apprenez à déployer sur App Engine.
- Découvrez comment résoudre les erreurs de compilation.