Skosmos 3 Release Process - NatLibFi/Skosmos GitHub Wiki

Steps to perform a Skosmos 3 alpha/beta release:

  1. Make sure package dependencies are up to date and installable without any breakage: php composer.phar self-update && php composer.phar update && npm install
  2. In your own dev environment: Make sure you have the latest main branch. Update the Skosmos version number in composer.json to match the upcoming release (i.e. remove the -dev suffix) and commit this to the main branch (git commit composer.json -m "set version 3.0-beta.1 for release") and push to GitHub
  3. Wait for GitHub Actions CI tests for the new tag/commit to complete, to make sure nothing is broken.
  4. Make a release from the maintenance branch using the GitHub Releases UI: Tag version "v3.0-beta.1", target branch is main, the previous release tag is "v3.0-alpha.2", the title is "Skosmos 3.0-beta.1", enter the release notes (you can use the Generate release notes button for a starting point), set it as pre-release, and press Publish
  5. Announce the release on skosmos-users: copy the text from the GitHub release page into a new post
  6. In your own dev environment: Update the Skosmos version number in composer.json to the next expected version (with -dev suffix) and commit to the main branch: git commit composer.json -m "mark the start of 3.0-beta.2 development"
  7. Push the commit to GitHub: git push
  8. Add a tag to mark the beginning of a new development cycle: git tag v3.0-beta.2-dev
  9. Push the new tag to GitHub: git push --tags
  10. Adjust milestones: mark the completed milestone as closed and create a new one for the next cycle
  11. Adjust issues and PRs: search for open issues and PRs tagged with the closed milestone and move them to the next one (or some other future milestone)
  12. In this document, change the version numbers for the next release