-
Notifications
You must be signed in to change notification settings - Fork 190
RAT License Checks
Apache Rat is a release audit tool that ensures license compliance for Apache projects. It scans source code repositories to identify files missing proper license headers and validates that all files use approved licenses, helping maintain the legal integrity required for Apache project releases.
Execute this command from the Cloudberry source directory root to generate a plain text license compliance report:
mvn apache-rat:check
Expected output:
[INFO] Rat check: Summary over all files. Unapproved: 0, unknown: 0, generated: 1, approved: 5332 licenses.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 16.881 s
[INFO] Finished at: 2025-08-13T14:18:21+08:00
[INFO] ------------------------------------------------------------------------
The detailed report is saved to target/rat.txt for review.
For a web-based report, run mvn apache-rat:rat followed by mvn site. This generates a browsable report under target/site/*.
The pom.xml file defines the Apache RAT license validation for Apache Cloudberry (Incubating).
- Third-party files: Add files without license headers to the exclusion list, ensuring they use Apache License 2.0 compatible licenses.
- New files by the Cloudberry member: Add the standard Apache License header to all original files created by Cloudberry community members.
Our Apache Rat audit workflow automatically checks every pull request for license compliance. Failed checks must be resolved before merging.
Example failure: https://github.com/apache/cloudberry/actions/runs/16673188459