Skip to content

Commit a95b2ae

Browse files
filipi86claude
andcommitted
feat(legal): add CLA with automated enforcement via CLA Assistant
- CLA.md: Individual Contributor License Agreement v1.0 Grants copyright + patent license to maintainer (including commercial use), contributor retains ownership. Required for dual open-source/enterprise model. - .github/workflows/cla.yml: CLA Assistant bot (contributor-assistant/github-action@v2.6.1) Automatically requests signature on every PR, blocks merge until signed, stores signatures in .github/cla-signatures.json on main branch. Dependabot and bots are exempt. - CONTRIBUTING.md: add CLA section at top + step 6 in PR process Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent b167a62 commit a95b2ae

3 files changed

Lines changed: 139 additions & 1 deletion

File tree

.github/workflows/cla.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: CLA Assistant
2+
3+
on:
4+
issue_comment:
5+
types: [created]
6+
pull_request_target:
7+
types: [opened, closed, synchronize]
8+
9+
permissions:
10+
contents: write # write CLA signatures file
11+
pull-requests: write # comment on PRs
12+
statuses: write # set commit status check
13+
14+
jobs:
15+
cla-check:
16+
name: CLA Check
17+
runs-on: ubuntu-latest
18+
# Skip Dependabot — automated dependency updates don't require CLA
19+
if: github.actor != 'dependabot[bot]'
20+
steps:
21+
- name: CLA Assistant
22+
uses: contributor-assistant/github-action@v2.6.1
23+
env:
24+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
25+
with:
26+
path-to-signatures: ".github/cla-signatures.json"
27+
path-to-document: "https://github.com/filipi86/drogonsec/blob/main/CLA.md"
28+
branch: main
29+
allowlist: filipi86,bot*,*[bot]
30+
custom-notsigned-prcomment: |
31+
Thank you for your contribution to **DrogonSec**!
32+
33+
Before we can merge this pull request, we need you to sign our **Contributor License Agreement (CLA)**.
34+
35+
The CLA ensures you retain ownership of your contribution while granting the project the rights needed to maintain and develop DrogonSec — including any future enterprise products built on top of the open-source core.
36+
37+
Please read the [CLA document](https://github.com/filipi86/drogonsec/blob/main/CLA.md) and sign by commenting below:
38+
39+
```
40+
I have read the CLA Document and I hereby sign the CLA
41+
```
42+
43+
This is a one-time action — once signed, all future PRs from your account are automatically approved.
44+
custom-signed-prcomment: |
45+
CLA signed. Thank you for contributing to DrogonSec!
46+
custom-allsigned-prcomment: |
47+
All contributors have signed the CLA. This check has passed.

CLA.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# DrogonSec Individual Contributor License Agreement
2+
3+
**Version 1.0 — Effective 2026-04-14**
4+
5+
Thank you for your interest in contributing to **DrogonSec**, a project maintained by **filipi86** ("Project Maintainer").
6+
7+
This Individual Contributor License Agreement ("CLA") clarifies the intellectual property rights you grant when submitting a Contribution to this project. By signing this CLA, you agree to the following terms.
8+
9+
---
10+
11+
## 1. Definitions
12+
13+
- **"You"** means the individual submitting a Contribution.
14+
- **"Contribution"** means any original work of authorship — including source code, documentation, bug fixes, tests, configuration, or any other material — submitted by You to this project via a pull request, issue, or any other means.
15+
- **"Project"** means the DrogonSec software and all associated repositories under https://github.com/filipi86/drogonsec.
16+
17+
---
18+
19+
## 2. Grant of Copyright License
20+
21+
You retain full ownership of your Contribution. You grant the Project Maintainer a **perpetual, worldwide, non-exclusive, royalty-free, irrevocable copyright license** to:
22+
23+
- Reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute your Contribution and any derivative works, **in any form and under any license**, including proprietary commercial licenses.
24+
25+
This means the Project Maintainer may use your Contribution in both the open-source version of DrogonSec and any commercial or enterprise product derived from it.
26+
27+
---
28+
29+
## 3. Grant of Patent License
30+
31+
You grant the Project Maintainer and all recipients of the Project a **perpetual, worldwide, non-exclusive, royalty-free, irrevocable patent license** to make, have made, use, offer to sell, sell, import, and otherwise transfer your Contribution, where such a license applies to patents that you hold that are necessarily infringed by your Contribution alone or in combination with the Project.
32+
33+
---
34+
35+
## 4. Representations
36+
37+
By submitting a Contribution, you represent that:
38+
39+
1. You have the legal right to grant the licenses described above.
40+
2. Your Contribution is your original creation, or you have sufficient rights to submit it under this CLA.
41+
3. Your Contribution does not violate any third-party intellectual property rights.
42+
4. If your employer has rights to intellectual property you create, you have received permission to submit this Contribution on behalf of your employer, or your employer has waived such rights.
43+
44+
---
45+
46+
## 5. No Obligation
47+
48+
Nothing in this CLA obligates the Project Maintainer to use, accept, or distribute your Contribution.
49+
50+
---
51+
52+
## 6. Disclaimer
53+
54+
Your Contribution is provided **"AS IS"**, without warranties or conditions of any kind.
55+
56+
---
57+
58+
## How to Sign
59+
60+
When you open a pull request, the CLA Assistant bot will automatically request your signature. You can sign by commenting on the PR:
61+
62+
```
63+
I have read the CLA Document and I hereby sign the CLA
64+
```
65+
66+
Your GitHub username and the date will be recorded as proof of agreement.
67+
68+
---
69+
70+
## Questions
71+
72+
For questions about this CLA, open an issue at https://github.com/filipi86/drogonsec/issues.

CONTRIBUTING.md

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ Thank you for your interest in contributing to **DrogonSec**! This project is a
66

77
## Table of Contents
88

9+
- [Contributor License Agreement (CLA)](#contributor-license-agreement-cla)
910
- [Code of Conduct](#code-of-conduct)
1011
- [Getting Started](#getting-started)
1112
- [Project Structure](#project-structure)
@@ -23,6 +24,22 @@ Thank you for your interest in contributing to **DrogonSec**! This project is a
2324

2425
---
2526

27+
## Contributor License Agreement (CLA)
28+
29+
**All contributors must sign the CLA before their pull request can be merged.**
30+
31+
When you open a PR, the CLA Assistant bot will automatically post a comment asking you to sign. Simply reply with:
32+
33+
```
34+
I have read the CLA Document and I hereby sign the CLA
35+
```
36+
37+
This is a **one-time action** — once signed, all future PRs from your account are automatically approved. The CLA ensures you retain full ownership of your contribution while granting DrogonSec the rights needed to maintain the project and build enterprise products on top of the open-source core.
38+
39+
Read the full [CLA document](./CLA.md) before signing.
40+
41+
---
42+
2643
## Code of Conduct
2744

2845
This project follows a **Contributor Covenant** approach. Be respectful, inclusive, and constructive. Harassment, discrimination, or bad-faith contributions will not be tolerated.
@@ -277,7 +294,9 @@ docs(readme): update installation instructions
277294
- How it was tested
278295
- Related issues (`Closes #123`)
279296

280-
6. A maintainer will review and may request changes. Once approved, your PR will be merged.
297+
6. **Sign the CLA** when the bot posts the request — one-time action.
298+
299+
7. A maintainer will review and may request changes. Once approved, your PR will be merged.
281300

282301
---
283302

0 commit comments

Comments
 (0)