Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Automatic Semantic Versioning Using GitHub Actions #6

Open
5 tasks
thomasvincent opened this issue Apr 22, 2024 · 0 comments
Open
5 tasks
Assignees
Labels
enhancement New feature or request

Comments

@thomasvincent
Copy link
Owner

Description

To ensure our releases follow consistent versioning practices, implement automatic semantic versioning in our repository. This should be integrated with our CI/CD pipeline using GitHub Actions to analyze commit messages and tag releases accordingly.

Objective

  • Automate the release versioning process using semantic versioning rules based on the content of commit messages following the Conventional Commits standard.

Tasks

  • Research and select a suitable tool for semantic versioning, such as semantic-release.
  • Set up a new GitHub Action workflow that triggers on merges to the main branch.
  • Configure the selected tool to analyze commit messages and determine version bumps.
  • Ensure the tool generates a changelog and tags the commit with the new version number.
  • Document the commit message format required for the semantic versioning tool to properly identify version increments.

Acceptance Criteria

  • The implementation must correctly identify and apply version increments (MAJOR, MINOR, PATCH) based on commit messages.
  • A new release and tag should be automatically created when changes are merged into the main branch.
  • The workflow should include generating and updating a changelog with each release.
  • Ensure that the semantic versioning workflow is documented so that all contributors understand how to format their commit messages.

Additional Notes

  • Consider the impact of this implementation on current development practices and communicate the changes clearly to all team members.
  • Review and test the system thoroughly to prevent any disruptions in the current CI/CD process.
@thomasvincent thomasvincent added the enhancement New feature or request label Apr 22, 2024
@thomasvincent thomasvincent self-assigned this Apr 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant