-
Notifications
You must be signed in to change notification settings - Fork 17
Concept of a build toolchain for Android and iOS #128
Description
@joernb and I discussed a concept for a build pipeline for the mobile apps which enables us to immediately build development builds on each commit as well as automatically build and publish stable releases to the common app stores.
This would allow one to easily perform developer tests for new features as well as it makes releasing a new version rapidly possible.
-
Using the Git Flow workflow, it is transparent to everyone which branch marks the current development line and which a stable release. A new branch, the
develop
branch is the main development line. Every commit on this branch triggers the development build process. New feature implementations are always branched from the latestdevelop
. To create a new, stable release, arelease
branch is created and merged intomaster
. A commit on master triggers the release build and publish process. -
When the development build process is triggered, the connection strings for the application are set to the server address of the development backend which provides test data and allows testing of connectivity functions by showing debug outputs. Commits on master (these are always tagged with a semantic version number), cause the pipeline to set the connection strings to the production backend.
-
Only when releases are built, the application is properly signed for publishing in the Android and Apple app stores. The keys required for publishing are hosted in a private key repository. Development builds are signed with debug keys.
To achieve this goal, we discussed utilizing fastlane altogether with Github Actions.
We want you to participate in creating the new pipeline and ask for your ideas and comments on how to improve this concept.