feat:add commit message linter and PR template (#1677)

This commit is contained in:
Vaclav Pavlin 2023-04-28 14:25:39 +02:00 committed by GitHub
parent 209579b0a7
commit de4c710501
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 76 additions and 0 deletions

26
.github/pull_request_template.md vendored Normal file
View File

@ -0,0 +1,26 @@
# Description
<!--- Describe your changes to provide context for reviewrs -->
# Changes
<!-- List of detailed changes -->
- [ ] ...
- [ ] ...
<!--
## How to test
1.
1.
1.
-->
<!--
## Issue
closes #
-->

50
.github/workflows/pr-lint.yml vendored Normal file
View File

@ -0,0 +1,50 @@
name: "Lint PR"
on:
pull_request_target:
types:
- opened
- edited
- synchronize
jobs:
main:
name: Validate PR title
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- uses: amannn/action-semantic-pull-request@v5
id: lint_pr_title
with:
types: |
chore
docs
feat
fix
refactor
style
test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- uses: marocchino/sticky-pull-request-comment@v2
# When the previous steps fails, the workflow would stop. By adding this
# condition you can continue the execution with the populated error message.
if: always() && (steps.lint_pr_title.outputs.error_message != null)
with:
header: pr-title-lint-error
message: |
Hey there and thank you for opening this pull request! 👋🏼
We require pull request titles to follow the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/) and it looks like your proposed title needs to be adjusted.
Details:
> ${{ steps.lint_pr_title.outputs.error_message }}
# Delete a previous comment when the issue has been resolved
- if: ${{ steps.lint_pr_title.outputs.error_message == null }}
uses: marocchino/sticky-pull-request-comment@v2
with:
header: pr-title-lint-error
delete: true