Si les déploiements automatiques sont activés, chaque fois que vous envoyez un nouveau commit dans la branche active de votre dépôt GitHub, App Hosting déploie automatiquement une nouvelle version de votre application. 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 prend en charge les déploiements déclenchés manuellement 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 l'onglet App Hosting, sélectionnez Afficher le tableau de bord pour le backend dont vous souhaitez voir les déploiements. Le tableau de bord affiche des informations sur le déploiement en cours, ainsi qu'un tableau listant l'historique de tous les déploiements pour ce backend.
Chaque déploiement contient un commit Git, une tâche Cloud Build et une révision Cloud Run.
- Le commit Git est l'instantané de votre dépôt au moment de la création du déploiement.
- La tâche 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 dans la console Firebase.
- La révision Cloud Run est l'environnement d'exécution de votre application Web. Pour en savoir plus sur la configuration d'exécution d'un déploiement (par exemple, les limites de processeur et de mémoire, ainsi que les variables d'environnement), cliquez sur le menu à trois points, puis sélectionnez Afficher la révision Cloud Run.
Déclencher manuellement un déploiement
Si vous souhaitez déclencher manuellement un déploiement à partir de votre source GitHub sans pousser un nouveau commit, vous pouvez créer un déploiement à partir de la console Firebase ou de la CLI Firebase. Cela est utile dans les cas suivants:
- Forcer la régénération du contenu statique.
- Permettre à un système CI/CD de 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 l'onglet App Hosting, sélectionnez Afficher le tableau de bord pour le backend pour lequel vous souhaitez créer un déploiement.
- Dans le tableau de bord du backend, sélectionnez Créer un déploiement.
- Sélectionnez la branche à déployer.
- Sélectionnez le commit à déployer, soit le dernier commit, soit un commit précédent spécifié par son ID de commit.
- Sélectionnez Créer. L'état et un numéro de build du déploiement s'affichent dans le tableau de l'historique du déploiement. Une fois le processus de déploiement terminé, ce déploiement s'affiche comme déploiement en cours.
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 du dernier commit pour 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 sans recréer
- Recréer et revenir à une version précédente
Créer un rollback instantané
Il peut arriver que vous deviez rapidement revenir à une ancienne version de votre application, par exemple si vous avez détecté un bug critique dans un déploiement nouvellement déployé ou si vous rencontrez un build instable qui bloque les nouveaux déploiements. Dans ce cas, vous pouvez restaurer une image de conteneur existante 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 la première création.
Pour créer un rollback instantané:
- Dans l'onglet Hébergement d'applications, sélectionnez Afficher le tableau de bord pour le backend pour lequel vous souhaitez créer un rollback.
- Dans le tableau Historique de déploiement du backend, sélectionnez le menu à trois points pour une version précédente.
- Sélectionnez Revenir à ce build, puis confirmez.
Recréer et effectuer un rollback
Si vous souhaitez revenir à une ancienne version de votre application, tout en conservant la configuration actuelle, vous pouvez reconstruire l'application lors du processus de rollback. Par exemple, si votre version la plus récente a mis à jour une valeur de clé API dans Secret Manager, la recompilation peut vous assurer que la nouvelle clé est utilisée dans votre application après le rollback.
Pour recompiler et effectuer un rollback:
- Dans l'onglet Hébergement d'applications, sélectionnez Afficher le tableau de bord pour le backend pour lequel vous souhaitez créer un rollback.
- Sélectionnez Créer un déploiement.
- Dans la boîte de dialogue Créer un déploiement, cochez Commit précédent, puis saisissez l'ID de commit de la version que vous souhaitez recompiler et à laquelle revenir. L'ID de commit fait partie des "Détails de la modification" pour chaque déploiement listé dans votre historique des déploiements,et est indiqué entre parenthèses dans l'étiquette.
- Sélectionnez Créer pour commencer le rollback.
Modifier les paramètres de déploiement
Vous pouvez modifier la branche en ligne pour les déploiements, et désactiver ou activer les déploiements automatiques à l'aide des commandes de la vue Settings > Deployment (Paramètres > Déploiement) du tableau de bord pour un backend.
- Dans l'onglet App Hosting, sélectionnez Afficher le tableau de bord pour le backend pour lequel 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 en ligne pour les déploiements, et désactiver ou activer les déploiements automatiques. Vous pouvez également définir le répertoire racine de l'application et l'environnement du backend (voir Déploiement dans plusieurs environnements).