Si vous avez activé les déploiements automatiques, chaque fois que vous envoyez un nouveau commit vers la branche active de votre dépôt GitHub App Hosting, une nouvelle version de votre application est automatiquement déployée. Vous pouvez vérifier l'état du déploiement dans la console Firebase ou dans la vérification GitHub App Hosting.
De plus, App Hosting permet de déclencher manuellement des déploiements pour l'intégration CI/CD ou tout autre cas où vous souhaitez forcer un déploiement.
Afficher les déploiements
La console Firebase permet d'accéder à des informations détaillées sur tous les déploiements de votre application. Dans App Hosting, sélectionnez Afficher pour le backend dont vous souhaitez consulter les déploiements. L'onglet Déploiements du backend affiche un tableau listant l'historique de tous les déploiements pour ce backend.
Chaque entrée de déploiement contient des liens vers le job Cloud Build et la modification ou le commit qui ont déclenché le déploiement, ainsi que des informations de base sur l'auteur, la date de création et l'état du déploiement.
- Le job Cloud Build est l'environnement de compilation dans lequel App Hosting exécute la commande de compilation de votre application. Vous pouvez accéder aux journaux Cloud Build en cliquant sur l'ID de compilation.
- La modification correspond au commit GitHub ou à une autre action qui a déclenché le déploiement.
Déclencher manuellement un déploiement
Si vous souhaitez déclencher manuellement un déploiement à partir de votre source GitHub sans envoyer de nouveau commit, vous pouvez créer un déploiement à partir de la console Firebase ou de l'interface de ligne de commande Firebase. Cela peut être utile dans les cas suivants :
- Forcer la régénération du contenu statique.
- Autoriser un système CI/CD à déclencher des déploiements.
- Limiter les déploiements en production à des dates ou heures spécifiques.
Pour déclencher un déploiement dans la console Firebase :
- Dans App Hosting, sélectionnez Afficher pour le backend pour lequel vous souhaitez créer un déploiement.
- Dans le récapitulatif du tableau de bord du backend, sélectionnez Créer un déploiement.
- Sélectionnez la branche à déployer.
- Sélectionnez le commit à déployer (le dernier ou un commit antérieur spécifié par son ID).
- Sélectionnez Créer. L'état et le numéro de version du déploiement s'affichent dans le tableau de l'historique des déploiements. Une fois le processus de déploiement terminé, ce déploiement s'affiche comme le déploiement actuel.
Pour déclencher un déploiement dans la CLI Firebase, exécutez la commande suivante et sélectionnez la branche pour le déploiement lorsque vous y êtes invité :
firebase apphosting:rollouts:create BACKEND_ID
Vous pouvez également lancer un déploiement pour le dernier commit d'une branche spécifique à l'aide de l'option --git-branch
:
firebase apphosting:rollouts:create BACKEND_ID
--git_branch BRANCH_NAME
Vous pouvez également créer un déploiement avec un commit spécifique à l'aide de l'option --git-commit
:
firebase apphosting:rollouts:create BACKEND_ID
--git_commit COMMIT_ID
Restaurer un déploiement précédent
App Hosting vous offre deux options pour restaurer un déploiement précédent :
- Rétablir instantanément une version antérieure sans avoir à la recompiler
- Recompiler et revenir à une version précédente
Créer un rollback instantané
Il peut arriver que vous deviez revenir rapidement à une ancienne version de votre application, par exemple si vous avez découvert un bug critique dans un déploiement récemment déployé ou si vous rencontrez un problème de compilation qui bloque de nouveaux déploiements. Dans ce cas, vous pouvez restaurer l'image de conteneur de votre choix à partir d'un déploiement précédent. Cette image n'est pas recréée, mais utilise le code et la configuration de l'environnement de sa première création.
Pour créer une restauration instantanée :
- Dans App Hosting, sélectionnez Afficher pour le backend pour lequel vous souhaitez créer une restauration.
- Sélectionnez l'onglet Déploiements.
- Dans le tableau Historique du backend, sélectionnez le menu à trois points d'une version précédente.
- Sélectionnez Revenir à cette version, puis confirmez.
Recompiler et effectuer un rollback
Si vous souhaitez revenir à une ancienne version de votre application tout en conservant la configuration actuelle, vous pouvez la recompiler dans le cadre du processus de rétablissement. Par exemple, si votre version la plus récente a mis à jour une valeur de clé API dans Secret Manager, la reconstruction peut garantir que la nouvelle clé est utilisée dans votre application après le rollback.
Pour recompiler et effectuer un rollback :
- Dans App Hosting, sélectionnez Afficher le tableau de bord pour le backend pour lequel vous souhaitez créer une restauration.\
- Sélectionnez l'onglet Déploiements.
- Sélectionnez Créer un déploiement.
- Dans la boîte de dialogue Créer un déploiement, cochez Commit antérieur, puis saisissez l'ID du commit pour la version que vous souhaitez recréer et à laquelle vous voulez revenir. L'ID de commit fait partie des "Détails de la modification" de chaque déploiement listé dans votre historique des déploiements. Il est indiqué entre parenthèses dans le libellé.
- Sélectionnez Créer pour lancer la restauration.
Modifier les paramètres de déploiement
Vous pouvez modifier la branche active pour les déploiements, et activer ou désactiver les déploiements automatiques à l'aide des commandes de la vue Paramètres > Déploiement du tableau de bord pour un backend.
- Dans App Hosting, sélectionnez Afficher pour le backend dont vous souhaitez modifier les paramètres de déploiement.
- Dans le tableau de bord du backend, sélectionnez Paramètres. La vue par défaut affiche des informations sur les domaines et les domaines personnalisés.
- Sélectionnez la vue Déploiement. Dans cette vue, vous pouvez modifier la branche active pour les déploiements, et activer ou désactiver les déploiements automatiques. Vous pouvez également définir le répertoire racine de l'application et l'environnement pour le backend (voir Déployer dans plusieurs environnements).