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.
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 thebeta
branch to any new beta prerelease or stable release version tag. This kind of automation would also make it feasible to also add analpha
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
andbeta
branches (e.g. by fast-forwarding the branches to a newer commit on theedge
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.