Automate releasing the app
Currently, releasing the app requires several manual steps:
- Updating the Snapcraft and AppStream meta info.
- Creating a new tag via the Gitlab website.
- Adding release notes to the Gitlab and Github release pages.
- Updating the Flatpak meta info repository over at Github.
The issue about this process is, that it is partially error prone. In a first step, it would be good to do the following to automate a release and reduce the possible number of errors:
- A pipeline shall be triggered with the next tag name as variable passed in.
- Specific tests shall check if the required meta information is present in the Snapcraft and AppStream meta data files.
- Ideally, release notes for this tag shall be checked in as well.
- At the end of the pipeline, if everything passed, the next tag shall automatically be created and ideally release notes be uploaded, too.
If possible, the following pipeline (which also uploads artifacts to Github) could modify the Flatpak meta repository as well.
Checklist
-
Use fastlane to upload to the Play Store and move the app through the different stages. -
Upload the macOS release to the App Store. -
Update the Flatpak repo automatically (beta + stable)
Edited by Martin Hoeher