feat(ci): Add conventional commit ci check#54
Conversation
|
Just checking because I'm not familiar with how GH actions work: if we add it to a separate yaml does it spin up a separate machine, and then does it use up more budget than just adding as another job in the same yaml? |
|
Just asking because this seems like quite a simple check - and is a nice-to-have, not essential. I'd be worried about using up significantly more of DSC's Actions budget for it |
|
@matweldon you get charged per minute and it doesn't appear to cost any different according to the calculator:
But I can't see the billing breakdown as that appears in account settings so I wouldn't know for sure what the difference would be... I guess the advantage of having them separate is that if you were to change the PR title due to a failed conventional commit check, it wouldn't then re-run the other potentially more expensive checks (I think, anyway!). |
Good to know, thanks! |
Something I didn't consider is whether they do something sneaky like round up to the nearest minute for each workflow run... again it'd be useful to see the billing information to confirm if this is what happens as all it seems to say in the docs is you pay per month for usage. |
It's charged per compute-minute, so 2 identical jobs concurrently or sequentially started via the same / different YAML files would cost the same. And classifai_package isn't under the enterprise licence so I think it has it's own quota for CICD compute time. (Note, looks to be 2000min/month, I think this budget is shared with the rest of the datasciencecampus private repos. See docs) |
lukeroantreeONS
left a comment
There was a problem hiding this comment.
The implementation matches the description proposed, and it seems like it would be a useful feature for tracking changes between releases.
Happy to approve.
|
@lukeroantreeONS @matweldon I've added the conventional commit validation to the main ci.yaml check to avoid multiple jobs being made... I was talking to Luke about this recently and there are a couple of issues here:
What do we think? |
4468e2b to
1f85b2c
Compare
My only holdout on removing the pull-request trigger was that I wanted to confirm the push trigger activates correctly for GitHub web GUI pushes; I'll try testing now by adding a comment to the tidy-up PR. If that goes as expected, then I'm happy to drop the pull-request trigger. UPDATE: Yeah, that worked as expected (triggered the CICD pipeline), so I'm happy for us to remove the 'on pull request' actions |
1f85b2c to
cc6b2db
Compare


📌 Pull Request Template
✨ Summary
This PR adds conventional-commit.yml to the github workflows. It checks to see if PR titles are written in a 'conventional commit' style, which will help to inform the version bump that should be implemented in the following release (feat!: major, feat: minor, fix: patch).
This is mainly useful for if we wish to implement an automated release process, for example release-please, which bumps SemVer numbers based on the prefixes that appear in the commit history. It's also worth noting that such tools heavily favour squash merging as a strategy.
📜 Changes Introduced
Added a conventional commit validation GitHub action which checks PR titles follow conventional commit prefix guidance.
Feature implementation (feat:) / bug fix (fix:) / refactoring (chore:) / documentation (docs:) / testing (test:)
Updates to tests and/or documentation
Terraform changes (if applicable)
✅ Checklist
terraform fmt&terraform validate)🔍 How to Test
Check that this PR conventional commit CI step passes. Confirm the behaviour is as expected.