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

CI: Enforce conventional commits and signed commits #1119

Open
realeinherjar opened this issue Sep 12, 2023 · 5 comments
Open

CI: Enforce conventional commits and signed commits #1119

realeinherjar opened this issue Sep 12, 2023 · 5 comments
Assignees
Labels
ci new feature New feature or request

Comments

@realeinherjar
Copy link
Contributor

During the devcall today @danielabrozzoni mentioned that the enforcement of both conventional commits (the fix, refactor, `feat, etc.) and the signed commits are manual.

We should add a CI step to automate this.
For the conventional commits, we have webiny/action-conventional-commits.
And for the signed commits, we have 1Password/check-signed-commits-action.

@realeinherjar realeinherjar added the new feature New feature or request label Sep 12, 2023
@realeinherjar
Copy link
Contributor Author

Assign this to me, I have experience with GHA from my fiat dev career.

@danielabrozzoni
Copy link
Member

Personally I'd love to see this, I remember agreeing with @evanlinjin that it would be useful to enforce signed commits in CI; while I don't remember who but someone wasn't fond of enforcing conventional commits (maybe @notmandatory?)

@realeinherjar
Copy link
Contributor Author

realeinherjar commented Sep 12, 2023

Yes, I plan to add the conventional commits commented out in the new .yml file.

EDIT: Or we just don't make that CI check mandatory for a PR to be merged

@danielabrozzoni
Copy link
Member

Or we just don't make that CI check mandatory for a PR to be merged

I like this!

Just assigned it to you, happy hacking

realeinherjar added a commit to realeinherjar/bdk that referenced this issue Sep 12, 2023
Closes bitcoindevkit#1119.
Creates `commits.yml` in `.github/workflows/` directory with a new GH Action
that has 2 jobs:

1. `signed-commits`: uses [`1Password/check-signed-commits-action`](https://github.com/1Password/check-signed-commits-action)
   to check if all commits in the PR are signed.
1. `conventional-commits`: uses [`webiny/action-conventional-commits`](https://github.com/webiny/action-conventional-commits)
   to check if all commits in the PR follows the conventional commits](https://www.conventionalcommits.org/en/v1.0.0-beta.2/),
   i.e. they are prefixed with `fix`, `refactor`, `feat` etc.
@notmandatory
Copy link
Member

Concept ACK. We already have "Require signed commits" enabled for merging PRs to the bdk master branch. So only need a plugin to enforce conventional commits.

realeinherjar added a commit to realeinherjar/bdk that referenced this issue Sep 15, 2023
Closes bitcoindevkit#1119.
Creates `commits.yml` in `.github/workflows/` directory with a new GH Action
that has 2 jobs:

1. `signed-commits`: uses [`1Password/check-signed-commits-action`](https://github.com/1Password/check-signed-commits-action)
   to check if all commits in the PR are signed.
1. `conventional-commits`: uses [`aevea/commitsar`](https://github.com/aevea/commitsar)
   to check if all commits in the PR follows the conventional commits](https://www.conventionalcommits.org/en/v1.0.0-beta.2/),
   i.e. they are prefixed with `fix`, `refactor`, `feat` etc.
realeinherjar added a commit to realeinherjar/bdk that referenced this issue Sep 15, 2023
Closes bitcoindevkit#1119.
Creates `commits.yml` in `.github/workflows/` directory with a new GH Action
that has 2 jobs:

1. `signed-commits`: uses [`1Password/check-signed-commits-action`](https://github.com/1Password/check-signed-commits-action)
   to check if all commits in the PR are signed.
1. `conventional-commits`: uses [`aevea/commitsar`](https://github.com/aevea/commitsar)
   to check if all commits in the PR follows the conventional commits](https://www.conventionalcommits.org/en/v1.0.0-beta.2/),
   i.e. they are prefixed with `fix`, `refactor`, `feat` etc.
realeinherjar added a commit to realeinherjar/bdk that referenced this issue Sep 15, 2023
Closes bitcoindevkit#1119.
Creates `commits.yml` in `.github/workflows/` directory with a new GH Action
that has 2 jobs:

1. `signed-commits`: uses [`1Password/check-signed-commits-action`](https://github.com/1Password/check-signed-commits-action)
   to check if all commits in the PR are signed.
1. `conventional-commits`: uses [`cocogitto/cocogitto-action`](https://github.com/cocogitto/cocogitto-action)
   based on [`cocogitto`](https://crates.io/crates/cocogitto)
   to check if all commits in the PR follows the conventional commits](https://www.conventionalcommits.org/en/v1.0.0-beta.2/),
   i.e. they are prefixed with `fix`, `refactor`, `feat` etc.
realeinherjar added a commit to realeinherjar/bdk that referenced this issue Sep 15, 2023
Closes bitcoindevkit#1119.
Creates `commits.yml` in `.github/workflows/` directory with a new GH Action
that has 2 jobs:

1. `signed-commits`: uses [`1Password/check-signed-commits-action`](https://github.com/1Password/check-signed-commits-action)
   to check if all commits in the PR are signed.
1. `conventional-commits`: uses [`cocogitto/cocogitto-action`](https://github.com/cocogitto/cocogitto-action)
   based on [`cocogitto`](https://crates.io/crates/cocogitto)
   to check if all commits in the PR follows the conventional commits](https://www.conventionalcommits.org/en/v1.0.0-beta.2/),
   i.e. they are prefixed with `fix`, `refactor`, `feat` etc.
realeinherjar added a commit to realeinherjar/bdk that referenced this issue Oct 2, 2023
Closes bitcoindevkit#1119.
Creates `commits.yml` in `.github/workflows/` directory with a new GH Action
that has 2 jobs:

1. `signed-commits`: uses [`1Password/check-signed-commits-action`](https://github.com/1Password/check-signed-commits-action)
   to check if all commits in the PR are signed.
1. `conventional-commits`: uses [`cocogitto/cocogitto-action`](https://github.com/cocogitto/cocogitto-action)
   based on [`cocogitto`](https://crates.io/crates/cocogitto)
   to check if all commits in the PR follows the conventional commits](https://www.conventionalcommits.org/en/v1.0.0-beta.2/),
   i.e. they are prefixed with `fix`, `refactor`, `feat` etc.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci new feature New feature or request
Projects
Status: Todo
Development

Successfully merging a pull request may close this issue.

3 participants