PlanktoScope / forklift

Composable, reprovisionable, decentralized management of apps & configs on Raspberry Pis and other embedded Linux systems
Apache License 2.0
6 stars 0 forks source link

ci: Provide starters/templates/examples/docs for auto-fast-forwarding release channel branches to version tags #255

Open ethanjli opened 1 month ago

ethanjli commented 1 month ago

Currently, the manual release checklists for the PlanktoScope OS include steps to fast-forward the beta branch (of device-pkgs and pallet-standard) to the newest beta pre-release tag, and to fast-forward the stable branch (of device-pkgs and pallet-standard) to the newest stable release tag. We could automate this by adding GitHub Actions CI workflows to try to automatically fast-forward the stable branch to any new non-prerelease version tag, and to automatically fast-forward the beta branch to any new beta prerelease or stable release version tag. This kind of automation would also make it feasible to also add an alpha branch which automatically gets fast-forwarded to any new alpha prerelease, beta prerelease, or stable release version tag.

This functionality may also make it feasible to prevent ordinary users from pushing commits directly to the stable and beta branches (e.g. by fast-forwarding the branches to a newer commit on the edge branch); we may be able to add branch protections to those branches so that those branches can only be updated via PRs or tag push-triggered CI workflows.