| name | github-workflows |
| description | Manage and automate Android CI/CD workflows using GitHub Actions in this repository. |
GitHub Workflows Skill
This skill provides instructions for managing, extending, and troubleshooting the GitHub Actions workflows in the automated-build-android-app-with-github-action project.
Workflow Overview
The repository contains several workflows located in .github/workflows/:
- Android CI (Main):
android-ci-generate-apk-aab-upload-push-github.yml: Builds APK/AAB and pushes the results to the buildActionResult folder in the repository.
android-ci.yml: Basic CI for building and testing.
- Artifact Management:
android-ci-generate-apk-aab-upload.yml: Builds and uploads artifacts to GitHub Actions.
android-ci-generate-apk-aab-download.yml: Research workflow for downloading artifacts.
- Deployment:
android-ci-publish-play-store.yml: (In research) Template for publishing to Google Play Store.
Key Environment Variables
Each workflow uses common environment variables defined at the top of the file:
main_project_module: Usually app.
playstore_name: Display name for the app (e.g., Frogobox ID).
build_output_path: Directory where build results are stored (e.g., buildActionResult).
Common Tasks
Adding a New Build Step
To add a new Gradle task to a workflow, insert a new step in the jobs.build.steps section:
- name: Your Task Name
run: ./gradlew yourTaskName
Modifying the Output Directory
If you want to change where the APKs/AABs are pushed in the repository, update the build_output_path env variable.
Triggering Workflows
- Push: Workflows are typically triggered on push to
release/** branches.
- Manual: Use
workflow_dispatch to trigger manually from the GitHub Actions tab.
Troubleshooting
- Permissions: Ensure
./gradlew has execution permissions (chmod +x ./gradlew).
- JDK Version: Workflows use JDK 17 by default. Ensure compatibility with your Gradle version.
- Secrets: Deployment workflows require secrets like
SIGN_KEY, ALIAS, STORE_KEY_PASSWORD, and KEY_PASSWORD.