Update README.md #97
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Commit Message Check | |
on: | |
pull_request: | |
env: | |
error_msg: |+ | |
See the document below for help on formatting commits for the project. | |
https://github.com/confidential-containers/confidential-containers/blob/main/CONTRIBUTING.md#patch-format | |
jobs: | |
commit-message-check: | |
runs-on: ubuntu-latest | |
name: Commit Message Check | |
steps: | |
- name: Get PR Commits | |
id: "get-pr-commits" | |
uses: tim-actions/[email protected] | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
# Filter out revert commits | |
# The format of a revert commit is as follows: | |
# | |
# Revert "<original-subject-line>" | |
# | |
filter_out_pattern: '^Revert "' | |
- name: Commit Body Missing Check | |
if: ${{ ( success() || failure() ) }} | |
uses: tim-actions/[email protected] | |
with: | |
commits: ${{ steps.get-pr-commits.outputs.commits }} | |
- name: Check Subject Line Length | |
if: ${{ ( success() || failure() ) }} | |
uses: tim-actions/[email protected] | |
with: | |
commits: ${{ steps.get-pr-commits.outputs.commits }} | |
pattern: '^.{0,75}(\n.*)*$' | |
error: "Subject too long (max 75)" | |
post_error: ${{ env.error_msg }} | |
- name: Check Body Line Length | |
if: ${{ ( success() || failure() ) }} | |
uses: tim-actions/[email protected] | |
with: | |
commits: ${{ steps.get-pr-commits.outputs.commits }} | |
# Notes: | |
# | |
# - The subject line is not enforced here (see other check), but has | |
# to be specified at the start of the regex as the action is passed | |
# the entire commit message. | |
# | |
# - Body lines *can* be longer than the maximum if they start | |
# with a non-alphabetic character. | |
# | |
# This allows stack traces, log files snippets, emails, long URLs, | |
# etc to be specified. Some of these naturally "work" as they start | |
# with numeric timestamps or addresses. Emails can but quoted using | |
# the normal ">" character, markdown bullets ("-", "*") are also | |
# useful for lists of URLs, but it is always possible to override | |
# the check by simply space indenting the content you need to add. | |
# | |
# - A SoB comment can be any length (as it is unreasonable to penalise | |
# people with long names/email addresses :) | |
pattern: '^.+(\n([a-zA-Z].{0,149}|[^a-zA-Z\n].*|Signed-off-by:.*|))+$' | |
error: "Body line too long (max 72)" | |
post_error: ${{ env.error_msg }} | |
- name: Check Subsystem | |
if: ${{ ( success() || failure() ) }} | |
uses: tim-actions/[email protected] | |
with: | |
commits: ${{ steps.get-pr-commits.outputs.commits }} | |
pattern: '^[\s\t]*[^:\s\t]+[\s\t]*:' | |
error: "Failed to find subsystem in subject" | |
post_error: ${{ env.error_msg }} |