一键导入
gplay-rollout-management
Staged rollout orchestration and monitoring for Google Play releases. Use when implementing gradual release strategies.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Staged rollout orchestration and monitoring for Google Play releases. Use when implementing gradual release strategies.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Guidance for using the Google Play Console CLI in this repo (flags, output formats, pagination, auth, and discovery). Use when asked to run or design gplay commands or interact with Google Play Console via the CLI.
In-app products, subscriptions, base plans, and offers setup for Google Play monetization, including bulk-localizing subscription display names, descriptions, and benefits across all locales. Use when configuring in-app purchases or subscription products.
Metadata and localization sync (including Fastlane format) for Google Play Store listings. Use when updating app descriptions, screenshots, or managing multi-locale metadata.
Migration from Fastlane supply to gplay CLI using the gplay migrate fastlane command. Use when asked to convert a Fastlane-based Play Store workflow to gplay, or to import existing Fastlane metadata directories.
Set region-specific pricing for subscriptions and in-app purchases using purchasing power parity (PPP). Use when adjusting prices by country or implementing localized pricing strategies on Google Play.
Server-side purchase verification for in-app products and subscriptions using Google Play Developer API. Use when implementing receipt validation in your backend.
| name | gplay-rollout-management |
| description | Staged rollout orchestration and monitoring for Google Play releases. Use when implementing gradual release strategies. |
Use this skill when you need to manage gradual releases on Google Play.
Staged rollout releases your app to a percentage of users, allowing you to:
gplay release \
--package com.example.app \
--track production \
--bundle app-release.aab \
--rollout 0.1
This releases to 10% of users.
gplay promote \
--package com.example.app \
--from beta \
--to production \
--rollout 0.25
# Increase to 25%
gplay rollout update \
--package com.example.app \
--track production \
--rollout 0.25
# Increase to 50%
gplay rollout update \
--package com.example.app \
--track production \
--rollout 0.5
# Increase to 100% (or use complete)
gplay rollout update \
--package com.example.app \
--track production \
--rollout 1.0
Pause distribution if issues are detected:
gplay rollout halt \
--package com.example.app \
--track production
Effect:
Resume after fixing issues:
gplay rollout resume \
--package com.example.app \
--track production
Release to 100% of users:
gplay rollout complete \
--package com.example.app \
--track production
gplay tracks get \
--package com.example.app \
--track production \
| jq '.releases[0].userFraction'
# Day 1: 10%
gplay release --package com.example.app --track production --bundle app.aab --rollout 0.1
# Day 2: 25% (monitor crash rate)
gplay rollout update --package com.example.app --track production --rollout 0.25
# Day 3: 50%
gplay rollout update --package com.example.app --track production --rollout 0.5
# Day 5: 75%
gplay rollout update --package com.example.app --track production --rollout 0.75
# Day 7: 100%
gplay rollout complete --package com.example.app --track production
# Day 1: 25%
gplay release --package com.example.app --track production --bundle app.aab --rollout 0.25
# Day 2: 50%
gplay rollout update --package com.example.app --track production --rollout 0.5
# Day 3: 100%
gplay rollout complete --package com.example.app --track production
# Day 1: 5%
gplay release --package com.example.app --track production --bundle app.aab --rollout 0.05
# Day 2: 10% (monitor carefully)
gplay rollout update --package com.example.app --track production --rollout 0.1
# Day 3: 25%
gplay rollout update --package com.example.app --track production --rollout 0.25
# Day 5: 50%
gplay rollout update --package com.example.app --track production --rollout 0.5
# Day 7: 75%
gplay rollout update --package com.example.app --track production --rollout 0.75
# Day 10: 100%
gplay rollout complete --package com.example.app --track production
Use Play Console → Quality → Android vitals
# Get recent reviews
gplay reviews list \
--package com.example.app \
--paginate \
| jq '.reviews[] | select(.createdTime > "2025-02-05") | {rating, text: .comments[0].userComment.text}'
gplay reviews list \
--package com.example.app \
| jq '.reviews[] | select(.rating == 1) | .comments[0].userComment.text'
| Metric | Action |
|---|---|
| Crash rate < 1% | Continue rollout |
| Crash rate 1-2% | Halt, investigate |
| Crash rate > 2% | Halt, rollback if possible |
| 1-star reviews spike | Halt, investigate |
| ANR rate spike | Halt, investigate |
| No issues after 24h | Increase rollout |
Google Play doesn't support automatic rollback, but you can:
# Build hotfix with higher version code
./gradlew bundleRelease
# Release hotfix immediately to 100%
gplay release \
--package com.example.app \
--track production \
--bundle app-hotfix.aab
This requires the previous version still be in beta track:
gplay promote \
--package com.example.app \
--from beta \
--to production
❌ Don't:
✅ Do:
# .github/workflows/rollout.yml
name: Automated Rollout
on:
schedule:
- cron: '0 9 * * *' # Daily at 9 AM
jobs:
increase-rollout:
runs-on: ubuntu-latest
steps:
- name: Get current rollout
id: current
run: |
CURRENT=$(gplay tracks get --package $PACKAGE | jq -r '.releases[0].userFraction')
echo "fraction=$CURRENT" >> $GITHUB_OUTPUT
- name: Increase rollout
if: steps.current.outputs.fraction < 1.0
run: |
NEW_FRACTION=$(echo "${{ steps.current.outputs.fraction }} + 0.25" | bc)
gplay rollout update --package $PACKAGE --track production --rollout $NEW_FRACTION
For manual rollout control, always use the Google Play Console UI as a backup.