gpc-release-flow

Use when uploading, releasing, promoting, or managing rollouts on Google Play. Make sure to use this skill whenever the user mentions gpc releases, upload AAB, upload APK, staged rollout, promote to production, halt rollout, gpc publish, release notes, track management, internal testing, beta release, production rollout, version code, rollout percentage, or wants to ship an Android app to any Play Store track. Also trigger when someone asks about the Google Play edit lifecycle, release validation, or how to do a phased rollout — even if they don't mention GPC by name. For metadata and listings, see gpc-metadata-sync. For CI/CD integration, see gpc-ci-integration.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "gpc-release-flow" with this command: npx skills add yasserstudio/gpc-skills/yasserstudio-gpc-skills-gpc-release-flow

GPC Release Flow

When to use

Use this skill when the task involves:

  • Uploading AAB/APK files to Google Play
  • Creating releases on any track (internal, alpha, beta, production)
  • Promoting releases between tracks
  • Managing staged rollouts (increase, halt, resume, complete)
  • Setting release notes
  • Using gpc publish for end-to-end release workflow
  • Pre-submission validation with gpc validate
  • Checking release status across tracks

Inputs required

  • Path to AAB/APK file
  • Target track (internal, alpha, beta, production, or custom)
  • Rollout percentage (for staged rollouts)
  • Release notes (inline or from file)
  • Whether --dry-run is desired (preview without executing)

Procedure

0) Pre-flight validation

Before uploading, validate the bundle:

gpc validate app-release.aab
gpc validate app-release.aab --track beta  # Validate for specific track

This checks file format, version code conflicts, and track compatibility.

1) Upload and release

A) Quick release (one command)

The publish command handles the full flow — upload, track assignment, release notes, and commit:

gpc publish app-release.aab --track internal
gpc publish app-release.aab --track beta --notes "Bug fixes and improvements"
gpc publish app-release.aab --track production --rollout 10

Multi-language release notes from directory:

gpc publish app-release.aab --track beta --notes-dir ./release-notes/

B) Step-by-step release

For more control, use individual commands:

# Upload AAB (creates edit, uploads, assigns to track)
gpc releases upload app-release.aab --track internal

# Upload with staged rollout
gpc releases upload app-release.aab --track production --rollout 10

# Set release notes
gpc releases notes set --track beta --lang en-US --notes "Bug fixes"
gpc releases notes set --track beta --file release-notes/  # From directory

Read:

  • references/upload-lifecycle.md

2) Check release status

gpc releases status                      # All tracks overview
gpc releases status --track production   # Specific track
gpc status                               # Cross-track overview (shorthand)

3) Promote between tracks

# Promote from internal to beta
gpc releases promote --from internal --to beta

# Promote from beta to production with staged rollout
gpc releases promote --from beta --to production --rollout 5

4) Manage staged rollouts

# Increase rollout percentage
gpc releases rollout increase --track production --to 50

# Halt rollout (stops further distribution)
gpc releases rollout halt --track production

# Resume halted rollout
gpc releases rollout resume --track production

# Complete rollout (100%)
gpc releases rollout complete --track production

Read:

  • references/rollout-strategies.md

5) Track management

gpc tracks list                    # List all tracks
gpc tracks get production          # Show track details + current releases

6) Preview with dry-run

All write operations support --dry-run:

gpc releases upload app.aab --track beta --dry-run
gpc releases promote --from beta --to production --rollout 10 --dry-run
gpc releases rollout increase --track production --to 50 --dry-run

7) Interactive mode

When flags are omitted, GPC prompts interactively (if TTY detected):

gpc releases upload app.aab
# Prompts for: track, rollout percentage, release notes

Disable with --no-interactive or GPC_NO_INTERACTIVE=1.

Verification

  • gpc releases status shows the release on the expected track
  • Version code matches the uploaded AAB
  • Rollout percentage is correct
  • Release notes are set for the expected languages
  • gpc vitals crashes --version <code> shows no spikes (post-release)

Failure modes / debugging

SymptomLikely CauseFix
Version code already usedSame version code exists on this trackIncrement versionCode in build
APK_NOT_SIGNEDMissing or invalid signingUse Play App Signing or check keystore
EDIT_CONFLICTAnother edit is in progressWait and retry, or use Console UI to discard pending edit
Rollout stuckRollout was haltedgpc releases rollout resume --track <track>
Wrong trackPromoted to wrong trackCreate new release on correct track

Read:

  • references/troubleshooting.md

Related skills

  • gpc-setup: Authentication and configuration
  • gpc-metadata-sync: Store listings and screenshots
  • gpc-vitals-monitoring: Post-release crash monitoring
  • gpc-ci-integration: Automated releases in CI/CD

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

gpc-migrate-fastlane

No summary provided by upstream source.

Repository SourceNeeds Review
Security

gpc-security

No summary provided by upstream source.

Repository SourceNeeds Review
General

gpc-sdk-usage

No summary provided by upstream source.

Repository SourceNeeds Review
General

gpc-metadata-sync

No summary provided by upstream source.

Repository SourceNeeds Review