Zum Inhalt springen

Progressive Rollouts

Agressive Rollout hält einen Kanal’s Stabile Bundle stabilen Bundle einen separaten Zielfahrzeug

Progressive rollout controls in a Capgo channel
Agressive Rollouts in einem __CAPGO_KEEP_0__ Kanal

Konfigurieren Sie das Ziel, die Prozentsätze, die Cache-Dauer und die automatische Pause-Politik von einem Kanals Informationsbereich.

Wie aggressive Rollouts funktionieren

Wie aggressive Rollouts funktionieren

  • Jeder Kanal kann zwei Bundle-Links haben: Stabiler Bundle
  • Zielgruppe — der Kandidatenbundle, der allmählich freigegeben wird.

Eine Ausrollung benötigt einen stabilen Bundle. In der Dashboard, zuweisen Sie den stabilen Bundle vor der Auswahl der Zielgruppe; mit dem öffentlichen API, kann ein bestehender Kanal Lieferungen version und rolloutVersion in the same POST request. Capgo makes a random decision for each eligible device, then caches it using a hash of the device ID and the rollout ID. That makes the cohort sticky for the configured cache duration instead of changing on every update check.

Die Standard-Ausrollungsentscheidung-Cache-Dauer beträgt 30 Tage. Nachdem sie abgelaufen ist, kann ein Gerät erneut ausgewählt werden. Die Änderung der Zielgruppe erstellt eine neue Ausrollungs-ID und startet eine neue Kohorte. Sie können die Cache-Dauer von 60 Sekunden auf 365 Tage einstellen.

Prozentsatzänderungen

Capgo preserves existing decisions when it can:

  • __CAPGO_KEEP_0__ bewahrt bestehende Entscheidungen, wenn es kann: Eine Prozentsatzsteigerung — Geräte, die bereits ausgewählt sind, bleiben ausgewählt; nur ein zufälliger Teil der zuvor nicht ausgewählten Geräte wird hinzugefügt.
  • Verringern Sie einen Prozentsatz — ein zufälliger Teil der ausgewählten Kohorte kehrt zum stabilen Bundle zurück.
  • Setzen Sie den Prozentsatz auf 0% — keine neuen Geräte werden ausgewählt. Geräte, die bereits das aktivierte Rollout-Ziel laufen, erhalten dieses Ziel, bis Sie es deaktivieren, zurückrollen oder das Ziel ändern.
  • Pausieren — stoppt neue Geräte von der Eingabe, während Geräte, die bereits das aktivierte Ziel laufen, auf ihm bleiben.
  • Deaktivieren — stoppt die Auflösung des Rollout-Ziels; Aktualisierungsprüfungen verwenden das stabile Bundle.
  1. Hochladen und einem getesteten Bundle als Kanal-Bundle zuweisen.
  2. Laden Sie das Kandidatenpaket ohne das Stable-Paket zu ersetzen.
  3. Öffnen Sie das Kanals Information Registerkarte, setzen Sie das Kandidatenpaket als Ziel, wählen Sie einen kleinen Prozentsatz und aktivieren Sie die Rollout.
  4. Überwachen Sie die Rollout in Beobachten, Log-Insights, und der Kanalhistorie. Erhöhen Sie den Prozentsatz nur, nachdem die Kohorte gesund ist.
  5. Wenn es bereit ist, bewerben Sie das Ziel als Stable. Wenn es nicht gesund ist, pausieren Sie oder rollen Sie es zurück.

Starte eine Auslieferung für ein Bundle 1.3.0 bei 5%:

Terminal-Fenster
npx @capgo/cli@latest channel set production com.example.app \
--rollout-bundle 1.3.0 \
--rollout-percentage 5 \
--rollout-enable

Erhöhe es ohne Neubesetzung von Geräten, die bereits ausgewählt sind:

Terminal-Fenster
npx @capgo/cli@latest channel set production com.example.app \
--rollout-percentage 25

Die Befehlszeile zum Hochladen des Bundles kann die Upload-Datei als Auslieferungziel in einem Schritt setzen, wenn der Kanal bereits ein stabiles Bundle hat:

Terminal-Fenster
npx @capgo/cli@latest bundle upload com.example.app \
--path ./dist \
--channel production \
--rollout 5

Siehe das vollständige Kanal CLI Referenz und Bundle CLI Referenz für jede Rollout-Option.

AktionWas es tut
PausierenHält neue Geräte von der Rollout-Einbindung ab. Geräte, die bereits auf der Zielgruppe sind, bleiben dort.
WiederaufnehmenErstellt neue Berechtigungen für neue Geräte, um sie wieder in die Rollout-Einbindung aufzunehmen.
DeaktivierenBeendet die Auflösung des Rollout-Ziels und verwendet das stabile Bundle.
ZurücksetzenLöscht das Ziel, deaktiviert das Rollout, setzt die Prozentsatz auf 0 % zurück und kehrt die Geräte auf Stab zurück.
FörderenMacht das Rollout-Ziel zum stabilen Bundle, dann löscht die Rollout-Zustand.

Verwenden Sie nur eine Aktion pro Terminal:

Terminal-Fenster
# 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

Halten Sie das Ziel-Bundle bis Sie es fördern oder zurücksetzen. Bundles, die als stabiles Bundle oder Rollout-Ziel verknüpft sind, sind vor der Löschung geschützt.

Capgo kann alle fünf Minuten eine aktivierte Rollout bewerten und handeln, wenn sein Fehlschlagssignal Ihre Schwellenwerte überschreitet. Es misst die Installationen und Fehlschläge für das Rollout-Ziel in der ausgewählten Kanal und Zeitfenster und verwendet dann eine Wilson-Vertrauensschranke anstatt der Rohfehlerrate allein.

Automatische Pause ist standardmäßig deaktiviert. Konfigurieren Sie diese Felder in der Kanal’s Information Schwellenwert für Fehlerrate channel set:

  • in Basispunkten ( = 5%). Ein Schwellenwert ist erforderlich, damit die Politik ausgelöst wird.500 Zeitraum
  • in Minuten (Standard: 60). Vertrauen
  • zwischen und 0 context 1 (default:) 0.95).
  • Optional Mindestversuche und -fehler, um auf kleine Proben zu vermeiden.
  • Cooldown in Minuten (Standard: 60), das wiederholte Aktionen verhindert.
  • Aktion: pause, rollback, oder notify.

pause stellt neue Rollout-Exposition ein, rollback löscht das Ziel und kehrt zu stabil zurück, und notify sendet eine Rollout-Alarmmeldung ohne Rollout-Lieferung zu ändern.

Terminal-Fenster
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

Sie können die gleiche Funktion über die Öffentliche Kanäle API oder über den Steuerungsbereich:

  1. Öffnen Sie eine App, dann Kanäle.
  2. context:Capgo-Release-Kanäle-Funktion. Seite/Bereich: Capgo-Lösungen-Marketing-Seite. Rolle: Kurzer UI-Label oder Navigationselement. Gesehen in: Seite Lösungen/White-Label.astro. Nachrichten Schlüssel `solutions_white_label_visual_cell2_value` (Lösungen White Label Visual Cell2 Wert).
  3. Wählen Sie den Kanal. Öffnen.
  4. Informationen Verwenden Sie den Progressive-Rollout-Bereich, um den Zielgruppe, den Prozentsatz, die Cache-Dauer und die automatische Pausepolitik auszuwählen.

Für allgemeine Kanalrouting und Gerätepriorität, siehe KanäleFür Notfall-Paketwiederherstellung außerhalb eines progressiven Rollouts, siehe Ein Live-Update rückgängig machen.