Add a job for creating an Android Application Bundle
Android Application Bundle (AAB) is the package format that is required for publishing new applications in Google Play.
The new job uses the artifacts created by the three architecture-specific build jobs to create the AAB. For this, we archive everything needed from the arm64 job, and we archive only the architecture-specific bits (i.e. the compiled libraries) for arm32 and x86-64. This is based on how Krita creates its AABs.
This MR also removes the artifacts:expose_as from the three architecture-specific build jobs since it is incompatible with glob patterns (which we use in artifacts:paths for arm64). I think, it anyway made very little sense to expose those job artifacts in the merge request UI. They are still available in the jobs.
The jobs have been tested with Itinerary: https://invent.kde.org/pim/itinerary/-/pipelines?page=1&scope=all&ref=work%2Fkloecker%2Fandroid-app-bundle
It's possible that for other applications the jobs need some tweaks with respect to what artifacts need to be archived.
Projects for which the QTANDROID_EXPORTED_TARGET
isn't equal to the project name need to set the KDECI_ANDROID_TARGET
variable in their .gitlab-ci.yml
, e.g. for Itinerary it needs to be set to itinerary-app
.