Staging repositories
Let bpo create staging repositories when pushing to certain pmaports branches (e.g. with _staging_
in the name).
Example for a v23.06 service pack:
- we push commits for the service pack to a
v23.06_staging_sp1
branch - bpo realizes that changes were made to this staging branch
- if the staging repo does not exist yet:
- create the staging repository by creating the same structure as currently in the v23.06 repository
- but instead of copying the packages, have symlinks to the packages in v23.06 (to save space)
- run the usual job to check for packages that were changes in the pmaports branch vs. what's in the binary repository
- build packages for the staging branch
- for each package that was changed, the symlinks get replaced with the new package
- or in case a package was deleted, the symlink gets removed
- if the staging repo does not exist yet:
Users need to configure the staging repository in /etc/apk/repositories, and can then get the changes with apk upgrade -a
.
I'm planning to implement this before v23.06 SP1, then we'll have a good way to have service packs tested easily by multiple people.