Skip to content

Add GH actions for tags & releases#1256

Draft
moyerr wants to merge 1 commit intomainfrom
task/tag-release-actions
Draft

Add GH actions for tags & releases#1256
moyerr wants to merge 1 commit intomainfrom
task/tag-release-actions

Conversation

@moyerr
Copy link
Copy Markdown
Collaborator

@moyerr moyerr commented May 21, 2025

Description

This PR introduces 3 GitHub Actions workflows:

  1. create-tag.yml - A reusable workflow that can be invoked directly via dispatch (uncommon, usually for testing in isolation), or called by another workflow (common). This creates a tag on a specific git ref.
  2. create-release.yml - A reusable workflow that can be invoked directly via dispatch (uncommon, usually for testing in isolation), or called by another workflow (common). This creates a release based on a given tag.
  3. generate-tag-release.yml - A workflow that can be manually invoked to generate a version number, create a tag with the version number, and publish a release. In the future, this could be triggered via workflow call during deployments.

This PR also introduces 2 shell scripts to help with versioning:

  1. gen-ver.sh - Generates a calendar version number (e.g. v25.05.21) based on the current date and any existing tags
  2. inc-patch-ver.sh - Called within gen-ver.sh to either increment or add a patch version (in case there are multiple releases on the same calendar day).

Calendar Versioning

The versioning scheme introduced here uses zero-padded two-digit calendar versioning. For example, the first release on August 9, 2025 would be version v25.08.09.

To disambiguate multiple releases on the same calendar day, we add a patch version to the end. Versions without the patch component have an implicit .0 patch version. For example, the second release on August 9, 2025 would be version v25.08.09.1.

@moyerr moyerr requested a review from AMMayberry1 as a code owner May 21, 2025 17:33
@AMMayberry1 AMMayberry1 marked this pull request as draft August 8, 2025 16:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant