Uploads a release-signed .aab to Google Play Console using the Google Play
Developer API.
mix dala.publish.android # uploads the default AAB
mix dala.publish.android path/to/app.aab # uploads a specific AAB
mix dala.publish.android --track internal # upload to Internal track
mix dala.publish.android --track alpha # upload to Alpha trackPrerequisites
Google Play Developer account with API access enabled
Service Account JSON key file with "Release Manager" or "Project Manager" role
dala.exsconfigured:config :dala_dev, google_play: [ service_account_json: "~/.google-play/service-account.json", package_name: "com.example.myapp", track: "internal" # internal | alpha | beta | production ]
Tracks
internal- Internal testing (up to 100 testers)alpha- Alpha testing (closed track)beta- Beta testing (open track)production- Live production release
What it does
- Validates the service account JSON and package name
- Reads the AAB file
- Uploads to Google Play Developer API
- Creates a new release on the specified track
- Prints the release URL in Google Play Console
Setup
1. Create a Service Account
- Go to Google Cloud Console
- Create a project or select existing
- Enable "Google Play Developer API"
- Create a Service Account with "Editor" role
- Generate a JSON key and download it
2. Link Service Account to Google Play
- Go to Google Play Console
- Settings → Developer Account → API Access
- Link your Google Cloud project
- Grant access to the service account (Release Manager role)
3. Configure dala.exs
Add the configuration shown in Prerequisites section.
Notes
The upload may take several minutes depending on AAB size and network speed. Google Play will process the release and you'll receive an email when it's ready.