before starting the development workflow, a Github Issue must be opened. The issue must be in BDD format and must be accepted.
- fork repository
- clone forked repository to local machine
- create your feature branch locally
- check in their code
- create pull request back to the original repository to main branch
- Pull request (PR) to main should enforce the conventional commit format (as expected by sematic-release)
- PR should pass unit tests and code coverage, code quality, and outstanding comment checks with the approval of at least one required reviewer.
- merge and squash will be performed (potentially automated)
- on merge to main, a github action will be initiated to run semantic-release
- automatically generate a changelog entry
- version file updates
- generates tag
- checks in all above release changes
- updates github Releases
- optionally: can update and publish a packaged version of the project
- decision point: when should the release be executed?:
- option 1: feature -> main via PR will initiate the semantic-release process
- option 2 (MANUAL): feature -> develop/release develop/release -> main via PR will initiate the semantic-release process
- option 3: option 2 executed on a cron schedule (monthly, bi-monthly, milestones)
- New list
- merge linked test
- manual release test
- yet another release test
- so many changes
- many change. much joy.