diff --git a/.github/workflows/semantic_pr.yaml b/.github/workflows/semantic_pr.yaml new file mode 100644 index 0000000..d0cd813 --- /dev/null +++ b/.github/workflows/semantic_pr.yaml @@ -0,0 +1,54 @@ +name: Semantic PR Validation +on: + pull_request_target: + types: + - opened + - edited + - synchronize +defaults: + run: + shell: bash +jobs: + validate: + runs-on: ubuntu-22.04 + permissions: + contents: read # Needed for checking out the repository + pull-requests: read # Needed for reading prs + steps: + - name: Validate Pull Request + uses: amannn/action-semantic-pull-request@e9fabac35e210fea40ca5b14c0da95a099eff26f # v5.4.0 + with: + # Configure which types are allowed. + # Default: https://github.com/commitizen/conventional-commit-types + types: | + feat + fix + build + chore + ci + docs + perf + refactor + revert + style + test + deps + scopes: | + deps + # Configure that a scope must always be provided. + requireScope: false + # When using "Squash and merge" on a PR with only one commit, GitHub + # will suggest using that commit message instead of the PR title for the + # merge commit, and it's easy to commit this by mistake. Enable this option + # to also validate the commit message for one commit PRs. + validateSingleCommit: true + # Configure additional validation for the subject based on a regex. + # This ensures the subject doesn't start with an uppercase character. + subjectPattern: ^(?![A-Z]).+$ + # If `subjectPattern` is configured, you can use this property to override + # the default error message that is shown when the pattern doesn't match. + # The variables `subject` and `title` can be used within the message. + subjectPatternError: | + The subject "{subject}" found in the pull request title "{title}" + didn't match the configured pattern. Please ensure that the subject + doesn't start with an uppercase character. \ No newline at end of file diff --git a/README.md b/README.md index 0a6e48f..9e06d4f 100644 --- a/README.md +++ b/README.md @@ -206,6 +206,6 @@ provide a smooth user experience while ensuring security and stability. #### Using docker-copose ```bash - Setup env variable in both frontend and backend + Setup env variable in both frontend and backend directory Run: docker-compose up ``` \ No newline at end of file