$gpc init
interactive--ci
Scaffold project config, metadata directory, and CI templates in one command.
usage
gpc init [options]Overview
gpc init creates the files you need to start using GPC in a project. It generates config files, a metadata directory for store listings, and optionally a CI template — all non-destructive by default.
Synopsis
bash
gpc init [options]1
Options
| Option | Description | Default |
|---|---|---|
--app <name> | Android package name (e.g. com.example.app) | prompted interactively |
--ci-template <platform> | Generate CI template: github or gitlab | prompted interactively |
--force | Overwrite existing files | skip existing |
What It Creates
.gpcrc.json # GPC config (package name, output format)
.preflightrc.json # Preflight scanner config
metadata/android/en-US/
├── title.txt # App title (max 30 chars)
├── short_description.txt # Short description (max 80 chars)
├── full_description.txt # Full description (max 4000 chars)
├── video.txt # Promo video URL
└── images/phoneScreenshots/.gitkeep1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
With --ci github:
.github/workflows/gpc-release.yml # Build → preflight → upload pipeline1
With --ci gitlab:
.gitlab-ci-gpc.yml # Build → preflight → release stages1
Examples
bash
# Interactive — prompts for package name and CI platform
gpc init
# Non-interactive
gpc init --app com.example.myapp
# With GitHub Actions workflow
gpc init --app com.example.myapp --ci github
# Overwrite existing files
gpc init --app com.example.myapp --force1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
Behavior
- Non-destructive — existing files are skipped. Use
--forceto overwrite. - Interactive — when run in a terminal, prompts for package name and CI platform. In CI or with
--no-interactive, uses defaults. - Subsequent runs show which files were created and which were skipped.
Next Steps
After running gpc init:
gpc auth login --service-account path/to/key.jsongpc doctorgpc status
