Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automate Gradle releases for Android apps #130

Open
1 of 4 tasks
nya-elimu opened this issue Apr 17, 2022 · 10 comments
Open
1 of 4 tasks

Automate Gradle releases for Android apps #130

nya-elimu opened this issue Apr 17, 2022 · 10 comments
Labels
#distribution 🛵💨 Distribution & Data Collection 🛵💨

Comments

@nya-elimu
Copy link
Member

nya-elimu commented Apr 17, 2022

Add a GitHub Action workflow for automatically performing a Gradle release each time a pull request is merged into main for these Android apps:

Once it works with the Vitabu app, copy the same solution to these apps:

@nya-elimu nya-elimu changed the title Automate Gradle releases for Android apps DevOps: Automate Gradle releases for Android apps Apr 18, 2022
@vivekkiran
Copy link

I am interested in this task.

@nya-elimu
Copy link
Member Author

@vivekkiran Great! Sent you an invite to join the GitHub organization 🙂

@nya-elimu
Copy link
Member Author

@vivekkiran Are you still interested?

@nya-elimu
Copy link
Member Author

@vivekkiran? 🙂

@jo-elimu jo-elimu changed the title DevOps: Automate Gradle releases for Android apps Automate Gradle releases for Android apps Jul 5, 2024
@jo-elimu jo-elimu added the #distribution 🛵💨 Distribution & Data Collection 🛵💨 label Jul 16, 2024
@tuancoltech
Copy link
Member

tuancoltech commented Feb 24, 2025

@jo-elimu Considering that this plugin https://github.com/ajoberstar/grgit is not maintained any longer (Which vitabu is using), and will soon be oudated, should we use Github Packages x Github Actions for automatic release instead?
If yes, I can help configure that.

@jo-elimu
Copy link
Member

jo-elimu commented Feb 24, 2025

@tuancoltech Yes, please research if automating releases is something we can do for all of our Android apps. Thank you.

Also be aware that we are using JitPack for release management of the Model and Webapp repos, as well as the utils libraries for the Analytics app and Content Provider app: http://jitpack.io/#elimu-ai

    implementation 'com.github.elimu-ai:model:model-2.0.80' // See https://jitpack.io/#elimu-ai/model
    implementation 'com.github.elimu-ai:content-provider:1.2.26@aar' // See https://jitpack.io/#elimu-ai/content-provider
    implementation 'com.github.elimu-ai:analytics:3.1.11@aar' // See https://jitpack.io/#elimu-ai/analytics

JitPack automatically detects Git tags (releases) created for a repo, and builds the release assets. So we just need a GitHub workflow that will automatically generate a new tag (version) of each app (and its utils library, if any).

@tuancoltech
Copy link
Member

@tuancoltech Yes, please research if automating releases is something we can do for all of our Android apps. Thank you.

Also be aware that we are using JitPack for release management of the Model and Webapp repos, as well as the utils libraries for the Analytics app and Content Provider app: http://jitpack.io/#elimu-ai

implementation 'com.github.elimu-ai:model:model-2.0.80' // See https://jitpack.io/#elimu-ai/model
implementation 'com.github.elimu-ai:content-provider:1.2.26@aar' // See https://jitpack.io/#elimu-ai/content-provider
implementation 'com.github.elimu-ai:analytics:3.1.11@aar' // See https://jitpack.io/#elimu-ai/analytics

JitPack automatically detects Git tags (releases) created for a repo, and builds the release assets. So we just need a GitHub workflow that will automatically generate a new tag (version) of each app (and its utils library, if any).

@jo-elimu I notice that content-provider already had release script which does bumping the patch version, and publish the release here: https://github.com/elimu-ai/content-provider/blob/main/.github/workflows/gradle-release.yml

Should we do the same for other apps?

@jo-elimu
Copy link
Member

jo-elimu commented Feb 24, 2025

@tuancoltech Yes, but does that release script also work for the utils module as well? (I mean the version number bumping in utils/build.gradle.)

@tuancoltech
Copy link
Member

tuancoltech commented Feb 24, 2025

@tuancoltech Yes, but does that release script also work for the utils module as well? (I mean the version number bumping in utils/build.gradle.)

@jo-elimu By reading the bumping script, I guess the version bumping code only works for app/build.gradle, which will not do the same in utils/buid.gradle.

By any chance do you remember if you did this bumping commit automatically (via running Gradle tasks) or manually (by editing the build.gradle files) ?
d79db5006d0ae891cefa2f4f2114f9e477934bb0

@jo-elimu
Copy link
Member

@tuancoltech From what I remember, we just edited the version in the build.gradle files manually for every release. We tried running the script for automating it, but we couldn't get it to work fully.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
#distribution 🛵💨 Distribution & Data Collection 🛵💨
Projects
Development

No branches or pull requests

4 participants