Skip to content

Commit

Permalink
chore: Add some extra steps and clarification for easier understandin…
Browse files Browse the repository at this point in the history
…g of release process for cht-android (#1386)
  • Loading branch information
sugat009 committed May 15, 2024
1 parent ac232c3 commit 2908359
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 6 deletions.
8 changes: 6 additions & 2 deletions content/en/apps/guides/android/publishing.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,16 @@ The Play Store has the advantage of being installed on all Android phones by def

One of the downsides is it can be more difficult to get your app published and it may be removed in future if it's found to not comply with future requirements.

Follow these instructions to [publish your app](https://support.google.com/googleplay/android-developer/answer/9859751?hl=en). In the [Google Play Console](https://play.google.com/console), for each flavor to publish, create a new `Production` release:
For this method you will need access to the organization's play store console with permission to publish the app.

- Upload app bundles (from the GitHub Release) for the flavor
In the [Google Play Console](https://play.google.com/console), for each flavor to publish:
- Create a new `Production` release
- Upload the `arm64` app bundles (from the GitHub Release) for the flavor. If you plan on uploading multiple APKs, the APKs should have different version codes. Read more: [here](https://developer.android.com/google/play/publishing/multiple-apks#Rules).
- Use the new cht-android version as the Release name
- Add a one sentence summary of the CHANGELOG entry as the Release notes.

For a more detailed explanation, follow this [doc](https://support.google.com/googleplay/android-developer/answer/9859751?hl=en).

{{% alert title="Note" %}}
Published apps are not immediately available to users on the Play Store. Confirm, via the Google Play Console, that the release is available before officially announcing it (this could take hours or days).
{{% /alert %}}
Expand Down
9 changes: 5 additions & 4 deletions content/en/contribute/code/android/releasing.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,15 @@ All Medic's android projects automatically build, sign, and release builds via G

1. Make sure all issues for this release have passed AT and been merged into `master`. You can also create an alpha release from a feature branch, to provide the needed `.apk` files to the QA team.
2. Create a git tag starting with `v` and ending with the alpha version, e.g. `git tag v1.2.3-alpha.1` and push the tag to GitHub (`git push --tags`). For features branches, you can add the name of the branch or whatever keyword helps to identify the the release, e.g. `v1.2.3-alpha.dark-theme.4`.
3. Creating the tag will trigger the building and signing of the app in CI. The release-ready APKs are available for side-loading from the Releases section in the project (e.g. [CHT-Android Releases](https://github.com/medic/cht-android/releases)), along with the AABs that may be required by the Google Play Store.
3. Creating the tag will trigger the building and signing of the app in CI. The release-ready APKs are available for side-loading from the Releases section in the project (e.g. [CHT-Android Releases](https://github.com/medic/cht-android/releases)), along with the AABs that may be required by the Google Play Store. Note that the created release on GitHub with the generated artifacts will not be explicitly linked to the tag because the release is in draft state.
4. **Side-Load**: for testing internally, or apps that are not published in the Play Store like Collect and Gateway: Navigate to the GitHub Releases page (linked above) and download the relevant APKs for distribution.
5. Announce the release in _#quality-assurance_.


## Production release

1. Repeat step 2-3 from the above [alpha release section](#alpha-for-release-testing) with the naming convention `v<major>.<minor>.<patch>`.
2. The CI build for the tag will create a new draft release on GitHub. Include the release notes from the CHANGELOG in the description of the release and publish the release on GitHub.
3. [Publish]({{< ref "apps/guides/android/publishing" >}}) in the Play Store, F-Droid or whatever channel is used for publishing. For the CHT-Android app, the "reference" apps (`medicmobilegamma` and `unbranded`) must be published in the Play Store.
4. Announce the release on the [CHT forum](https://forum.communityhealthtoolkit.org), under the "Product - Releases" category.
1. Update the CHANGELOG with the details of what's in this release.
1. The CI build for the tag will create a new draft release on GitHub. Include the release notes from the CHANGELOG in the description of the release and publish the release on GitHub.
1. [Publish]({{< ref "apps/guides/android/publishing" >}}) in the Play Store. For the CHT-Android app, the "reference" apps (`medicmobilegamma` and `unbranded`) must be published in the Play Store. Other channels such as F-Droid can also be used to publish the app.
1. Announce the release on the [CHT forum](https://forum.communityhealthtoolkit.org), under the "Product - Releases" category.

0 comments on commit 2908359

Please sign in to comment.