-
Notifications
You must be signed in to change notification settings - Fork 120
58 lines (57 loc) · 2.25 KB
/
reusable.cla.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
name: CLA Assistant Reusable Workflow
on:
workflow_call:
inputs:
signatures_path:
type: string
default: "signatures.json"
description: |-
Location where CLA signatures are stored and tracked.
This file maintains the record of all contributors who have signed the agreement.
Customize this path when:
- Using a different storage location for signatures
- Managing multiple CLAs in the same repository
- Integrating with existing signature tracking systems
document_path:
type: string
default: "https://github.com/BloodHoundAD/CLA/blob/main/ICLA.md"
description: |-
URL to the Contributor License Agreement document that contributors must sign.
This document defines the terms under which contributions are accepted.
Customize this when:
- Using a different CLA version
- Implementing organization-specific agreements
- Supporting multiple languages or jurisdictions
branch:
type: string
default: "main"
description: "Branch name for the CLA repository"
remote_organization:
type: string
default: "BloodHoundAD"
description: "Organization name containing the CLA repository"
remote_repository:
type: string
default: "CLA"
description: "Name of the CLA repository"
secrets:
github_token:
required: true
gh_access_token:
required: true
jobs:
process-cla:
runs-on: ubuntu-latest
steps:
- name: "CLA Assistant"
if: (github.event.comment.body == 'recheck' || github.event.comment.body == 'I have read the CLA Document and I hereby sign the CLA') || github.event_name == 'pull_request_target'
uses: contributor-assistant/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
PERSONAL_ACCESS_TOKEN: ${{ secrets.gh_access_token }}
with:
path-to-signatures: ${{ inputs.signatures_path }}
path-to-document: ${{ inputs.document_path }}
branch: ${{ inputs.branch }}
remote-organization-name: ${{ inputs.remote_organization }}
remote-repository-name: ${{ inputs.remote_repository }}