11# GitHub Actions Workflows for App Publishing
22
3- This directory contains GitHub Actions workflow configurations for automating the build and deployment process of the
4- Secure Camera app to both Google Play and GitHub Releases.
3+ This directory contains GitHub Actions workflow configurations for automating the build and
4+ deployment process to both Google Play and GitHub Releases.
55
66## Workflow: Publish Releases
77
@@ -11,25 +11,6 @@ the format `v*` (e.g., `v1.0.0`) is pushed to the repository. It contains two jo
11111 . Build and publish to Play Store
12122 . Build and publish GitHub release
1313
14- ### Play Store Job Steps
15-
16- 1 . Checkout the code
17- 2 . Set up JDK 17
18- 3 . Set up Ruby and install Fastlane
19- 4 . Decode the Android keystore from a base64-encoded secret
20- 5 . Build the release AAB with proper signing
21- 6 . Decode the Google Play service account key
22- 7 . Deploy to Google Play using Fastlane
23-
24- ### GitHub Release Job Steps
25-
26- 1 . Checkout the code
27- 2 . Set up JDK 17
28- 3 . Decode a separate Android keystore from a base64-encoded secret
29- 4 . Build a signed release APK
30- 5 . Create a GitHub release
31- 6 . Attach the APK to the release
32-
3314### Required Secrets
3415
3516#### For Play Store Publishing
@@ -67,39 +48,3 @@ The following secrets must be configured in your GitHub repository settings:
67483 . ** GITHUB_RELEASE_KEY_ALIAS** : Alias of the key in the GitHub release keystore
6849
69504 . ** GITHUB_RELEASE_KEY_PASSWORD** : Password for the key in the GitHub release keystore
70-
71- ### How to Use
72-
73- 1 . Set up all the required secrets in your GitHub repository settings:
74- - For Play Store publishing: ENCODED_KEYSTORE, KEYSTORE_PASSWORD, KEY_ALIAS, KEY_PASSWORD, PLAY_STORE_CONFIG_JSON
75- - For GitHub release publishing: GITHUB_RELEASE_ENCODED_KEYSTORE, GITHUB_RELEASE_KEYSTORE_PASSWORD,
76- GITHUB_RELEASE_KEY_ALIAS, GITHUB_RELEASE_KEY_PASSWORD
77- 2 . When you're ready to release a new version:
78- - Update the version information in ` gradle/libs.versions.toml `
79- - Commit and push the changes
80- - Create and push a new tag with the format ` v1.0.0 ` (matching your version)
81- ``` bash
82- git tag v1.0.0
83- git push origin v1.0.0
84- ```
85- 3 . The workflow will automatically trigger and:
86- - Deploy the app to Google Play
87- - Create a GitHub release with the signed APK attached
88-
89- ### Troubleshooting
90-
91- If the workflow fails, check the following:
92-
93- #### For Play Store Publishing
94-
95- 1 . Ensure all Play Store secrets are correctly configured
96- 2 . Verify that the keystore is valid and contains the correct key
97- 3 . Make sure the Google Play service account has the necessary permissions
98- 4 . Check that the app's version code has been incremented since the last release
99-
100- #### For GitHub Release Publishing
101-
102- 1 . Ensure all GitHub release secrets are correctly configured
103- 2 . Verify that the GitHub release keystore is valid and contains the correct key
104- 3 . Check that you have the necessary permissions to create releases in the repository
105- 4 . Verify that the APK is being built correctly
0 commit comments