forked from mtfoley/pr-compliance-action
-
Notifications
You must be signed in to change notification settings - Fork 0
/
action.yml
146 lines (135 loc) · 5.7 KB
/
action.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
name: 'PR Compliance Action'
description: >
Action to check PR compliance on various aspects to improve maintainer QOL.
branding:
icon: git-pull-request
color: green
author: 'Matthew Foley'
inputs:
repo-token:
required: false
description: 'Repo Access Token'
default: ${{ github.token }}
ignore-authors:
required: true
description: >
PR Authors to ignore (e.g. dependabot). All checks will be skipped and action outputs will be
set to true if the PR has one of these authors.
default: |
dependabot
dependabot[bot]
ignore-team-members:
required: true
description: >
Whether to ignore in the case that the PR author is a) the owner of repository, or b) has a
public membership in the org that owns the repository. If set to true and either of these
cases are satisfied, all checks will be skipped and action outputs will be set to true.
default: true
base-comment:
required: true
description: >
Preamble portion to have on any comments made by the action. Because multiple checks are run,
the action may have multiple sections to any generated comment.
default: >
# PR Compliance Checks
Thank you for your Pull Request! We have run several checks on this pull request in order
to make sure it's suitable for merging into this project. The results are listed in the
following section.
body-regex:
required: true
description: 'PR Body Regex'
default: '(fix(es|ed)?|((resolve|close)(s|d)?)) ((https:\/\/github.com\/[a-zA-Z0-9-_]+\/[a-zA-Z0-9-_]+\/issues\/d*[1-9]d*?)|(#d*[1-9]d*?))'
body-fail:
required: true
description: >
Whether to trigger a failing check when the body-regex is not matched in the PR body.
default: false
body-auto-close:
required: true
description: 'Whether or not to auto-close on failed check of PR Body'
default: true
body-comment:
required: true
description: 'Comment to leave on PR on failed check of PR Body'
default: >
## Issue Reference
In order to be considered for merging, the pull request description must refer to a
specific issue number. This is described in our Contributing Guide. We are closing this
pull request for now but you can update the pull request description and reopen the pull
request.
The check is looking for a phrase similar to: "Fixes #XYZ" or "Resolves #XYZ" where XYZ is the issue
number that this PR is meant to address.
issue-labels:
default: ''
description: >
Label(s) to verify are present on linked issue, e.g. "accepting PRs".
Each line in this input corresponds to a label, and all labels specified
must be present for the check to pass.
issue-labels-auto-close:
required: true
description: Whether to auto-close on failed check of required issue labels
default: true
issue-labels-comment:
default: >
## Required Issue Labels Missing
In order to be considered for merging, the pull request's linked issues
must each be labeled indicating they're accepting pull requests.
description: 'Comment to leave on PR on failed check of required issue label'
required: true
protected-branch:
required: true
description: 'Protected Branch'
default: ''
protected-branch-auto-close:
required: true
description: Whether or not to auto-close on failed check of PR head branch'
default: true
protected-branch-comment:
required: true
description: 'Comment to leave on PR on failed check of PR head branch.'
default: >
## Protected Branch
In order to be considered for merging, the pull request changes must
not be implemented on the "%branch%" branch. This is described in our Contributing Guide.
We are closing this pull request and we would suggest that you implement your changes as
described in our Contributing Guide and open a new pull request.
title-check-enable:
required: true
description: 'Whether or not to lint PR title per [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/)'
default: true
title-comment:
required: true
description: 'Comment to leave on PR on failed check of PR title per [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/)'
default: >
## Conventional Commit PR Title
In order to be considered for merging, the pull request title must match the specification in
[conventional commits](https://www.conventionalcommits.org/en/v1.0.0/). You can edit
the title in order for this check to pass.
Most often, our PR titles are something like one of these:
- docs: correct typo in README
- feat: implement dark mode"
- fix: correct remove button behavior
watch-files:
required: true
description: 'Files to flag modifications'
default: ''
watch-files-comment:
required: true
description: 'Comment to leave on PR when watched files have been changed.'
default: >
## Watched Files
This pull request modifies specific files that require careful review by the maintainers.
outputs:
body-check:
description: 'Result of match for PR Body against configured regex.'
branch-check:
description: 'Result of check to ensure PR head is not protected branch.'
issue-label-check:
description: 'Result of check to ensure linked issue has required labels.'
title-check:
description: 'Result of check to ensure PR title is formatted per [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/)'
watch-files-check:
description: 'Result of check for watched files having been modified. True if no modifications found to watched files.'
runs:
using: 'node16'
main: 'dist/index.js'