Gérer les chaînes, versions et versions d'aperçu en direct pour votre site

Firebase Hosting fournit des outils via la console Firebase et la CLI Firebase pour gérer les canaux, les versions et les révisions de votre site Hosting.

Présentation de l'infrastructure Hosting

Comprendre l'infrastructure Hosting vous aide à comprendre les options de gestion décrites sur cette page.

Chaque projet Firebase possède un Hosting site Hosting par défaut qui a accès à toutes les ressources du projet (bases de données, authentification, fonctions, etc.). Un site contient un ou plusieurs canaux, chacun étant associé à une URL qui diffuse un contenu spécifique et une configuration Hosting.

Hosting

une image de <span class=Hiérarchie de Firebase Hosting" />

Chaque Hosting site possède un canal "live" qui diffuse du contenu et une Hosting configuration sur (1) les sous-domaines provisionnés par Firebase du site (SITE_ID.web.app et SITE_ID.firebaseapp.com) et (2) tous les domaines connectés personnalisés. Vous pouvez également créer des canaux "preview" facultatifs qui diffusent leur propre contenu et leur propre configuration sur des URL de prévisualisation temporaires et partageables (SITE_ID--CHANNEL_ID-RANDOM_HASH.web.app).

Le contenu et la configuration diffusés par chaque canal sont regroupés dans un objet version qui possède un identifiant unique. Lorsque vous effectuez un déploiement sur votre site, Firebase crée un objet release qui pointe vers une version spécifique. Une version contient des métadonnées sur le déploiement, comme la personne qui a effectué le déploiement et la date à laquelle il a été effectué.

Dans le tableau de bord de votre projet Firebase, vous pouvez consulter l'historique complet des versions de votre canal live dans un tableau Historique des versions.Hosting Si vous disposez de plusieurs Hosting sites, cliquez sur Afficher pour le site souhaité afin de consulter son historique des versions. Si vous disposez de canaux de prévisualisation, ils s'affichent également dans le Hosting tableau de bord.

Gérer les paramètres d'un canal

Vous pouvez contrôler les paramètres de chaque canal de votre site. Certains paramètres, comme l'expiration du canal, ne s'appliquent qu'aux canaux de prévisualisation.

Limiter le nombre de versions à conserver

Chaque fois que vous effectuez un déploiement sur un canal (et que vous créez une version), Hosting conserve la version associée à la version précédente dans l'espace de stockage Hosting de votre projet. Vous pouvez définir le nombre de versions à conserver pour chaque canal de votre projet, qu'il s'agisse de canaux live ou de prévisualisation.

  • Pourquoi Hosting conserve-t-il les versions précédentes ?
    Pour votre canal live, conserver les versions précédentes vous permet de revenir à une version antérieure de votre site, si nécessaire. Pour vos canaux de prévisualisation, le rollback n'est pas encore disponible.

  • Pourquoi limiter le nombre de versions à conserver ?
    Cette fonctionnalité peut vous aider à contrôler le niveau d'utilisation de l'espace de stockage de votre projetHosting, car le contenu des versions précédentes est conservé dans cet espace de stockage. Vous pouvez surveiller votre Hosting espace de stockage depuis l' onglet Stockage de la console.

  • Que se passe-t-il lorsque vous limitez les versions à conserver ?
    Lorsque vous définissez une limite pour les versions à conserver, le contenu de toutes les versions dépassant la limite que vous avez définie est planifié pour être supprimé, en commençant par les versions les plus anciennes.

Voici comment définir la limite de stockage des versions pour un canal :

  1. Dans la console Firebase, accédez à Hosting & Serverless > Hosting pour accéder à la boîte de dialogue de configuration du stockage des versions :

    • Pour votre canal live
      Dans le Historique des versions tableau pour votre site, cliquez , puis sélectionnez Paramètres de stockage des versions.

    • Pour n'importe quel canal de prévisualisation
      Dans la ligne du canal de prévisualisation, cliquez sur , puis sélectionnez Paramètres du canal.

  2. Saisissez le nombre de versions que vous souhaitez conserver, puis cliquez sur Enregistrer.

Définir l'expiration d'un canal de prévisualisation

Par défaut, un canal de prévisualisation expire sept jours après sa date de création, mais le canal live de votre site n'expire jamais.

Lorsqu'un canal de prévisualisation expire, le canal, ainsi que ses versions et révisions associées, sont planifiés pour être supprimés dans les 24 heures. L'URL de prévisualisation associée est également désactivée. Une exception à cette suppression de version se produit si une version est associée à une autre version (par exemple, si vous clonez une version d'un canal vers un autre sur le même site).

Hosting permet de contrôler l'expiration d'un canal de deux manières différentes :

  • Firebase console
    Dans la ligne du canal de prévisualisation, cliquez sur , puis sélectionnez Paramètres du canal. Saisissez la date et l'heure d'expiration.

  • Firebase CLI
    Lorsque vous effectuez un déploiement sur votre canal de prévisualisation, transmettez l'option --expires DURATION, par exemple :

    firebase hosting:channel:deploy new-awesome-feature --expires 7d

    L'expiration peut avoir lieu jusqu'à 30 jours après la date de déploiement. Utilisez h pour les heures, d pour les jours et w pour les semaines (par exemple, 12h, 7d, 2w, respectivement).

Cloner une version d'un canal vers un autre

Vous pouvez cloner une version déployée d'un canal vers un autre. Vous pouvez cloner des canaux live ou de prévisualisation, des sites Hosting ou même des projets Firebase.

La commande de clonage déploie également sur le canal "cible" afin que le contenu et la configuration clonés Hosting soient automatiquement diffusés sur l'URL associée au canal"cible" .

Cette fonctionnalité est utile pour le suivi des versions ou si vous souhaitez vous assurer que vous déployez le contenu exact que vous avez consulté et/ou testé sur un autre canal. Voici quelques exemples :

  • Cloner un canal de prévisualisation "QA" vers le canal live de votre site (mise en ligne)

  • Cloner le canal live de votre site vers un canal de prévisualisation "debug" (comme avant un rollback)

  • Cloner un canal de votre projet Firebase "staging" vers un canal de prévisualisation de votre projet Firebase "prod"

Pour cloner une version, exécutez la commande suivante à partir de n'importe quel répertoire :

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

Remplacez chaque espace réservé par ce qui suit :

  • SOURCE_SITE_ID et TARGET_SITE_ID : il s'agit des ID des sites Hosting qui contiennent les canaux.

    • Pour votre site Hosting par défaut, utilisez l'ID de votre projet Firebase.
    • Vous pouvez spécifier Hosting sites qui se trouvent dans le même projet Firebase ou même dans des projets Firebase différents.
  • SOURCE_CHANNEL_ID et TARGET_CHANNEL_ID : il s'agit des identifiants des canaux.

    • Pour un canal live, utilisez live comme ID de canal.
    • Si le canal "cible" spécifié n'existe pas encore, cette commande crée le canal avant d'y effectuer le déploiement.

Effectuer un rollback vers une version précédente de votre site

Vous pouvez effectuer un rollback pour diffuser une version précédente du canal live de votre site. Cette action est utile si votre version actuelle présente un problème et que vous souhaitez effectuer un rollback pour diffuser une version de votre site qui fonctionne. Ou peut-être que votre site a diffusé du contenu temporaire pour une fête ou un événement spécial, mais que vous souhaitez maintenant effectuer un rollback pour diffuser votre contenu "normal".

En effectuant un rollback, vous créez une version qui diffuse la même version de contenu qu'une version précédente. Dans le tableau Historique des versions, les deux versions afficheront le même identifiant de version.

Pour effectuer un rollback :

  1. Dans la console Firebase, accédez à Hosting & Serverless > Hosting.

  2. Dans le tableau Historique des versions de votre site, pointez sur l'entrée de la version précédente vers laquelle vous souhaitez effectuer un rollback.

  3. Cliquez sur , puis sélectionnez Restaurer.

Supprimer manuellement une version

Vous devrez peut-être supprimer manuellement une version de votre canal live pour libérer de l'espace de stockage Hostingpour votre projet. Vous ne pouvez supprimer que les versions précédentes, et non la version actuellement diffusée sur votre site live.

Lorsque vous supprimez une version, vous supprimez en fait son contenu, qui est planifié pour être supprimé dans les 24 heures. L'objet de version lui-même est conservé afin que vous puissiez toujours voir ses métadonnées (qui a effectué le déploiement et quand).

Pour supprimer une version :

  1. Dans la console Firebase, accédez à Hosting & Serverless > Hosting.

  2. Dans le tableau Historique des versions de votre site, pointez sur l'entrée de la version précédente que vous souhaitez supprimer.

  3. Cliquez sur , puis sélectionnez Supprimer.

Supprimer manuellement des fichiers

Dans Firebase Hosting, la principale façon de supprimer des fichiers sélectionnés d'un site déployé consiste à supprimer les fichiers localement, puis à les redéployer.

Supprimer manuellement un canal de prévisualisation

Vous pouvez prévisualiser vos canaux en cliquant sur celui que vous souhaitez prévisualiser. Dans cette vue, vous pouvez afficher, supprimer et rétablir les déploiements et versions les plus récents liés au canal spécifique. Vous pouvez supprimer un canal de prévisualisation, mais vous ne pouvez pas supprimer le canal live de votre site.

Lorsque vous supprimez un canal de prévisualisation, le canal, ainsi que ses versions et révisions associées, sont planifiés pour être supprimés dans les 24 heures. L'URL de prévisualisation associée est également désactivée. Une exception à la suppression de version se produit si une version est associée à une autre version (par exemple, si vous clonez une version d'un canal vers un autre sur le même site).

Hosting permet de supprimer un canal de prévisualisation de deux manières différentes :

  • Firebase console
    Dans la ligne du canal de prévisualisation, cliquez sur , puis sélectionnez Supprimer le canal. Confirmez la suppression.

  • CLI Firebase
    Exécutez la commande suivante à partir de n'importe quel répertoire :

    firebase hosting:channel:delete CHANNEL_ID

Commandes CLI pour les canaux de prévisualisation et le clonage

Commandes pour les canaux de prévisualisation

Toutes les commandes pour les canaux de prévisualisation sont compatibles avec les cibles de déploiement si vous disposez de plusieurs Hosting sites.

Commande Description
firebase hosting:channel:create CHANNEL_ID

Crée un nouveau canal de prévisualisation dans le par défaut Hosting site à l'aide du CHANNEL_ID spécifié.

Cette commande n'effectue pas de déploiement sur le canal.

firebase hosting:channel:delete CHANNEL_ID

Supprime le canal de prévisualisation spécifié.

Vous ne pouvez pas supprimer le canal live d'un site.

firebase hosting:channel:deploy CHANNEL_ID

Déploie votre Hosting contenu et votre configuration sur le canal de prévisualisation spécifié .

Si le canal de prévisualisation n'existe pas encore, cette commande crée le canal dans le par défaut Hosting site avant d'y effectuer le déploiement.

firebase hosting:channel:list Répertorie tous les canaux (y compris le canal "live") dans le site par défaut Hosting.
firebase hosting:channel:open CHANNEL_ID Ouvre un navigateur sur l'URL du canal spécifié ou renvoie l'URL si l'ouverture dans un navigateur n'est pas possible.

Commandes pour le clonage de version

Commande Description
firebase hosting:clone \
SOURCE_SITE_ID:SOURCE_CHANNEL_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

Clone la version la plus récemment déployée sur le canal "source" spécifié vers le canal "cible" spécifié.

Cette commande effectue également un déploiement sur le canal "cible" spécifié. Si le canal "cible" n'existe pas encore, cette commande crée un nouveau canal de prévisualisation dans le site Hosting "cible" avant d'y effectuer le déploiement dans le canal.

firebase hosting:clone \
SOURCE_SITE_ID:@VERSION_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

Clone la version spécifiée vers le canal "cible" spécifié.

Cette commande effectue également un déploiement sur le canal "cible" spécifié. Si le canal "cible" n'existe pas encore, cette commande crée un nouveau canal de prévisualisation dans le site Hosting "cible" avant d'y effectuer le déploiement dans le canal.

Vous trouverez le VERSION_ID dans le Hosting tableau de bord de la Firebase console.