ci(cla): store CLA signatures on a dedicated branch (#40)
The CLA Assistant appends each signature as a direct commit to the branch named in 'branch:'. That was main, which the 'Require CI on main' ruleset rejects ('Repository rule violations found'), so signatures were never recorded and the check stayed red however often a contributor signed — a deadlock for every outside contribution.
Point the store at the cla-signatures branch. The ruleset targets the default branch only, so the bot can append there without granting any actor a bypass on main. That branch is seeded with the existing signature and carries its own ruleset blocking deletion and non-fast-forward pushes.
This commit is contained in:
@@ -2,8 +2,16 @@ name: CLA Assistant
|
|||||||
|
|
||||||
# Requires every contributor to sign the project Contributor License Agreement
|
# Requires every contributor to sign the project Contributor License Agreement
|
||||||
# (CLA.md) before their pull request can be merged. Signatures are stored in
|
# (CLA.md) before their pull request can be merged. Signatures are stored in
|
||||||
# this repository at signatures/cla.json — no external service or database is
|
# this repository at signatures/cla.json on the `cla-signatures` branch — no
|
||||||
# used. A contributor signs by commenting the exact sentence configured below.
|
# external service or database is used. A contributor signs by commenting the
|
||||||
|
# exact sentence configured below.
|
||||||
|
#
|
||||||
|
# Why not `main`: the action appends each signature as a direct commit, which
|
||||||
|
# the "Require CI on main" ruleset rejects ("Repository rule violations found"),
|
||||||
|
# leaving the signature unrecorded and the check permanently red. Keeping the
|
||||||
|
# store on its own branch lets the bot append without granting any actor a
|
||||||
|
# bypass on main. That branch has its own ruleset blocking deletion and
|
||||||
|
# force-pushes, so the record cannot be rewritten.
|
||||||
|
|
||||||
on:
|
on:
|
||||||
issue_comment:
|
issue_comment:
|
||||||
@@ -37,7 +45,7 @@ jobs:
|
|||||||
path-to-signatures: 'signatures/cla.json'
|
path-to-signatures: 'signatures/cla.json'
|
||||||
# The CLA document contributors are agreeing to.
|
# The CLA document contributors are agreeing to.
|
||||||
path-to-document: 'https://github.com/TheZwiss/backspace/blob/main/CLA.md'
|
path-to-document: 'https://github.com/TheZwiss/backspace/blob/main/CLA.md'
|
||||||
branch: 'main'
|
branch: 'cla-signatures'
|
||||||
# Accounts that never need to sign (maintainer + automation).
|
# Accounts that never need to sign (maintainer + automation).
|
||||||
allowlist: 'TheZwiss,dependabot[bot],github-actions[bot]'
|
allowlist: 'TheZwiss,dependabot[bot],github-actions[bot]'
|
||||||
# The exact phrase a contributor comments to sign.
|
# The exact phrase a contributor comments to sign.
|
||||||
|
|||||||
Reference in New Issue
Block a user