Passer au contenu

Rollouts progressives

Une mise à jour progressive maintient un lien de bundle d'un canal en place tout en livrant un cible de mise à jour séparée à un sous-ensemble de dispositifs contrôlés. Cela est utile lorsque vous souhaitez une validation de production réelle sans passer à la mise à jour du canal tout entier à la fois. Une mise à jour progressive contrôle dans un __CAPGO_KEEP_0__ canal Configurez la cible de mise à jour, le pourcentage, la durée de cache et la politique d'arrêt automatique à partir de l'onglet Informations d'un canal. Comment fonctionnent les mises à jour progressives Section intitulée « Comment fonctionnent les mises à jour progressives »

Progressive rollout controls in a Capgo channel
Lien de bundle stable

Progressive rollout controls in a __CAPGO_KEEP_0__ channel

  • Configure the rollout target, percentage, cache duration, and auto-pause policy from a channel’s Information tab. How progressive rollouts work
  • Rollout cible — le bundle candidat qui est publié progressivement.

Un rollout nécessite un bundle stable. Dans le tableau de bord, affectez le bundle stable avant de choisir la cible ; avec le Public API, un canal existant peut fournir version et rolloutVersion en même temps dans la même requête POST. Capgo prend une décision aléatoire pour chaque appareil éligible, puis la cache à l'aide d'une hachage de l'ID de l'appareil et de l'ID de rollout. Cela fait que le groupe reste collé pour la durée de cache configurée au lieu de changer à chaque vérification de mise à jour.

Capgo conserve les décisions existantes lorsqu'il le peut :

  • Augmenter un pourcentage — les appareils déjà sélectionnés restent sélectionnés; seuls un sous-ensemble aléatoire d'appareils non sélectionnés précédemment est ajouté.
  • Diminuer un pourcentage — un sous-ensemble aléatoire du groupe sélectionné revient à la version stable.
  • Définir le pourcentage à 0% — aucun nouveau appareil n'est sélectionné. Les appareils déjà exécutant la cible de déploiement activée continuent à recevoir cette cible jusqu'à ce que vous désactiviez, reveniez en arrière ou modifiiez la cible.
  • Suspendre — arrête les nouveaux appareils d'entrer tandis que les appareils déjà exécutant la cible active restent sur elle.
  • Désactiver — arrête de résoudre la cible de déploiement; les mises à jour utilisent la version stable.
  1. Télécharger et affecter une version testée en tant que version stable du canal.
  2. Charger le bundle candidat sans remplacer le bundle stable.
  3. Ouvrir la section Informations et définir le candidat comme cible. Choisissez un pourcentage faible et activez le lancement.Surveillez le lancement dans
  4. Observez Logiciels d'analyse, et l'historique du canal. Augmentez le pourcentage uniquement après que le groupe soit en bonne santé.Lorsqu'il est prêt, promouvez la cible vers stable. Si ce n'est pas le cas, arrêtez ou revenez en arrière.
  5. __CAPGO_KEEP_0__ exemple

Démarrer une mise en production pour le bundle 1.3.0 à 5 % :

Fenêtre de terminal
npx @capgo/cli@latest channel set production com.example.app \
--rollout-bundle 1.3.0 \
--rollout-percentage 5 \
--rollout-enable

Augmenter sans réinstaller les appareils déjà sélectionnés :

Fenêtre de terminal
npx @capgo/cli@latest channel set production com.example.app \
--rollout-percentage 25

La commande d'upload du bundle peut définir son upload comme cible de mise en production en une étape lorsque le canal a déjà un bundle stable :

Fenêtre de terminal
npx @capgo/cli@latest bundle upload com.example.app \
--path ./dist \
--channel production \
--rollout 5

Voir la version complète canal CLI référence et bundle CLI reference pour chaque option de mise à jour

Pause, annuler ou promouvoir

Action
Ce qu'il faitArrêter
Arrête les nouveaux appareils de rejoindre la mise à jour. Les appareils déjà sur la cible activée restent là.Reprendre
Permet aux nouveaux appareils éligibles de rejoindre à nouveau.Section intitulée “Pause, annuler ou promouvoir”
DésactiverArrête la résolution du cible de déploiement et utilise le bundle stable.
Revenir en arrièreSupprime la cible, désactive le déploiement, réinitialise le pourcentage à 0 % et renvoie les appareils vers le stable.
PromouvoirFixe la cible de déploiement sur le bundle stable, puis supprime l'état de déploiement.

Utilisez une action de terminal à la fois :

Fenêtre de terminal
# Stop adding devices while you investigate
npx @capgo/cli@latest channel set production com.example.app --rollout-pause
# Make the candidate stable for everyone
npx @capgo/cli@latest channel set production com.example.app --rollout-promote
# Discard the candidate and return to stable
npx @capgo/cli@latest channel set production com.example.app --rollout-rollback

Conservez le bundle cible disponible jusqu'à ce que vous le promouviez ou que vous reveniez en arrière. Les bundles liés comme un bundle stable ou une cible de déploiement sont protégés de suppression.

Capgo peut évaluer une mise en production activée toutes les cinq minutes et agir lorsque son signal de défaillance franchit votre seuil. Il mesure les installations et les défaillances pour la cible de la mise en production dans le canal sélectionné et la fenêtre de temps, puis utilise une limite inférieure de confiance de Wilson plutôt que le taux de défaillance brut seul.

La mise en pause automatique est désactivée par défaut. Configurez ces champs dans l’onglet Informations Seuil de taux de défaillance channel set:

  • en points de base ( = 5%). Un seuil est requis pour que la politique déclenche.500 Fenêtre
  • en minutes (par défaut : 60). Confiance
  • entre et 0 et 1 (default: 0.95).
  • Minimum essais et échecs optionnels, pour éviter d'agir sur des échantillons minuscules.
  • Cooldown en minutes (par défaut: 60), qui empêche les actions répétées.
  • Action: pause, rollback, ou notify.

pause arrête l'exposition à la nouvelle mise en production, rollback efface la cible et revient à la version stable, et notify envoie un avertissement de mise en production sans modifier la livraison.

Fenêtre de terminal
npx @capgo/cli@latest channel set production com.example.app \
--auto-pause-enabled \
--auto-pause-failure-rate-bps 500 \
--auto-pause-window-minutes 60 \
--auto-pause-confidence 0.95 \
--auto-pause-min-attempts 100 \
--auto-pause-min-failures 5 \
--auto-pause-action pause \
--auto-pause-cooldown-minutes 120

Vous pouvez gérer la même fonctionnalité à travers les Canaux publics API ou le tableau de bord :

  1. Ouvrez une application, puis Canal.
  2. context : nom de la fonctionnalité des canaux de mise à jour de Capgo. Page/zone : page de marketing des solutions Capgo. Rôle : étiquette de navigation ou élément de menu court. Vu dans : page solutions/white-label.astro. Clé de message `solutions_white_label_visual_cell2_value` (Valeur de cellule visuelle Solutions White Label).
  3. Sélectionnez le canal. Ouvrir.
  4. Information Utilisez le La mise à jour progressive section pour choisir la cible, le pourcentage, la durée de cache et la politique d'arrêt automatique.

Pour la routage de canal général et la priorité des appareils, voir CanauxMise à jour Éditer la page.