-
Notifications
You must be signed in to change notification settings - Fork 0
58 lines (49 loc) · 1.69 KB
/
Copy pathcommit-signing.yml
File metadata and controls
58 lines (49 loc) · 1.69 KB
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
# L34 commit signing evidence: verify main tip signature + soft branch-protection checklist.
# Branch protection itself is not enforceable from OSS CI without admin API scope.
name: Commit signing
on:
pull_request:
paths:
- ".github/workflows/commit-signing.yml"
- "scripts/commit-signing-check.ps1"
- "tests/commit_signing_check.rs"
- "docs/ops/commit-signing.md"
- "docs/adr/0004-commit-signing-policy.md"
- "SECURITY.md"
- "CONTRIBUTING.md"
push:
branches: [main]
paths:
- ".github/workflows/commit-signing.yml"
- "scripts/commit-signing-check.ps1"
- "tests/commit_signing_check.rs"
- "docs/ops/commit-signing.md"
- "docs/adr/0004-commit-signing-policy.md"
- "SECURITY.md"
- "CONTRIBUTING.md"
workflow_dispatch:
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
commit-signing:
name: commit signing policy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
fetch-depth: 0
- name: ensure origin/main is available on PR checkouts
run: git fetch --no-tags origin main
- name: verify main tip and recent signed commits
shell: pwsh
run: ./scripts/commit-signing-check.ps1 -Ref main -Count 30
- name: commit signing bounded header SelfCheck
shell: pwsh
run: ./scripts/commit-signing-check.ps1 -SelfCheck
- name: branch protection checklist (soft / docs-only)
shell: pwsh
run: ./scripts/commit-signing-check.ps1 -BranchProtectionChecklist
continue-on-error: true