This is an automated email from the ASF dual-hosted git repository.
kbowers pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-kogito-apps.git
The following commit(s) were added to refs/heads/main by this push:
new dac96ac57 kie-issues#1670: Migrate Apache licenses check to apache rat
0.17.x (#2286)
dac96ac57 is described below
commit dac96ac57a645a3cf32efb961d72a1f41e3cb3ac
Author: Jozef Marko <[email protected]>
AuthorDate: Mon Feb 23 18:27:02 2026 +0100
kie-issues#1670: Migrate Apache licenses check to apache rat 0.17.x (#2286)
* kie-issues#1670: Migrate Apache licenses check to apache rat 0.17.x
Closes: https://github.com/apache/incubator-kie-issues/issues/1670
* Fix .rat-excludes
* Detect '!' character that is signal of Unapproved files
* Replace deprecated '-E' by '--input-exclude-file'
---
.github/workflows/ci_check_license_headers.yaml | 13 +-
.rat-excludes | 164 ++++++++----------------
2 files changed, 67 insertions(+), 110 deletions(-)
diff --git a/.github/workflows/ci_check_license_headers.yaml
b/.github/workflows/ci_check_license_headers.yaml
index cb3819f18..7bf697038 100644
--- a/.github/workflows/ci_check_license_headers.yaml
+++ b/.github/workflows/ci_check_license_headers.yaml
@@ -33,8 +33,17 @@ jobs:
- name: Download Apache RAT
run: |
- curl -LO
https://repo1.maven.org/maven2/org/apache/rat/apache-rat/0.16.1/apache-rat-0.16.1.jar
+ curl -LO
https://repo1.maven.org/maven2/org/apache/rat/apache-rat/0.17/apache-rat-0.17.jar
- name: Run Apache RAT
run: |
- java -jar apache-rat-0.16.1.jar -d . -E .rat-excludes | grep "==
File:" && echo "The files listed above are missing license headers." && exit 1
|| echo "All files have license headers."
+ # Redirect output to .rat-reports file, continue even if RAT returns
non-zero exit code because we want to print Unapproved documents
+ java -jar apache-rat-0.17.jar --input-exclude-file .rat-excludes --
. > .rat-reports 2>&1 || true
+ if grep -q "^! Unapproved:" .rat-reports; then
+ echo "❌ Apache RAT check FAILED - Files with unapproved licenses
found:"
+ echo ""
+ grep "^! /" .rat-reports
+ exit 1
+ else
+ echo "✅ Apache RAT check PASSED - All files have approved
licenses."
+ fi
diff --git a/.rat-excludes b/.rat-excludes
index 1d0970d2c..eac98258b 100644
--- a/.rat-excludes
+++ b/.rat-excludes
@@ -1,110 +1,58 @@
-# .rat-excludes
.rat-excludes
-# DISCLAIMER-WIP
+.rat-reports
+apps-integration-tests/integration-tests-data-index-service/integration-tests-data-index-service-common/src/main/resources/approval.bpmn
+apps-integration-tests/integration-tests-data-index-service/integration-tests-data-index-service-quarkus/src/main/resources/META-INF/processSVG/approvals.svg
+apps-integration-tests/integration-tests-data-index-service/integration-tests-data-index-service-quarkus/src/test/resources/approval.bpmn
+apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/processes/MultipleTimerInstancesBoundaryTimerEvent.bpmn
+apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/processes/MultipleTimerInstancesTimerEvent.bpmn
+apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/travels/async.bpmn
+apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/travels/timer-on-task.bpmn
+apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/travels/timers.bpmn
+apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/travels/timersCycle.bpmn
+apps-integration-tests/integration-tests-trusty-service/integration-tests-trusty-service-common/src/main/resources/TrafficViolation.dmn
+data-audit/data-audit-common/src/main/resources/META-INF/data-audit-job-query.graphqls
+data-audit/data-audit-common/src/main/resources/META-INF/data-audit-process-query.graphqls
+data-audit/data-audit-common/src/main/resources/META-INF/data-audit-types.graphqls
+data-audit/data-audit-common/src/main/resources/META-INF/data-audit-usertask-query.graphqls
+data-audit/kogito-addons-data-audit-jpa/kogito-addons-data-audit-jpa-common/src/main/resources/META-INF/data-audit-orm.xml
+data-audit/kogito-addons-data-audit-jpa/kogito-addons-data-audit-jpa-common/src/main/resources/META-INF/services/org.kie.kogito.app.audit.spi.DataAuditStore
+data-audit/kogito-addons-data-audit-jpa/kogito-addons-data-audit-jpa-common/src/main/resources/META-INF/services/org.kie.kogito.app.audit.spi.GraphQLSchemaQueryProvider
+data-audit/kogito-addons-data-audit-springboot/src/test/resources/application.properties
+data-index/data-index-graphql/src/main/resources/graphql/basic.schema.graphqls
+data-index/data-index-graphql/src/main/resources/graphql/count.schema.graphqls
+data-index/data-index-graphql/src/main/resources/graphql/json.schema.graphqls
+data-index/data-index-mutations/data-index-shared-output-mutation/src/main/resources/mutation.schema.graphqls
+data-index/data-index-quarkus/data-index-service-inmemory/src/test/resources/ui/index.html
+data-index/data-index-quarkus/data-index-service-inmemory/src/test/resources/ui/styles.css
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-inmemory/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-inmemory/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-jpa/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-jpa/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-mongodb/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-mongodb/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-postgresql/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-postgresql/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-jpa/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-jpa/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-mongodb/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-quarkus/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-postgresql/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-service/data-index-service-common/src/main/resources/domain.schema.graphqls
+data-index/data-index-springboot/kogito-addons-springboot-data-index/kogito-addons-springboot-data-index-jpa-parent/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-springboot/kogito-addons-springboot-data-index/kogito-addons-springboot-data-index-jpa-parent/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
+data-index/data-index-springboot/kogito-addons-springboot-data-index-persistence/kogito-addons-springboot-data-index-persistence-jpa-parent/integration-tests-process/src/main/resources/hello.bpmn
+data-index/data-index-springboot/kogito-addons-springboot-data-index-persistence/kogito-addons-springboot-data-index-persistence-jpa-parent/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
DISCLAIMER-WIP
-#
apps-integration-tests/integration-tests-data-index-service/integration-tests-data-index-service-common/src/main/resources/approval.bpmn
-approval.bpmn
-#
apps-integration-tests/integration-tests-data-index-service/integration-tests-data-index-service-quarkus/src/main/resources/META-INF/processSVG/approvals.svg
-approvals.svg
-#
apps-integration-tests/integration-tests-data-index-service/integration-tests-data-index-service-quarkus/src/test/resources/approval.bpmn
-approval.bpmn
-#
apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/processes/MultipleTimerInstancesBoundaryTimerEvent.bpmn
-MultipleTimerInstancesBoundaryTimerEvent.bpmn
-#
apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/processes/MultipleTimerInstancesTimerEvent.bpmn
-MultipleTimerInstancesTimerEvent.bpmn
-#
apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/travels/async.bpmn
-async.bpmn
-#
apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/travels/timer-on-task.bpmn
-timer-on-task.bpmn
-#
apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/travels/timers.bpmn
-timers.bpmn
-#
apps-integration-tests/integration-tests-jobs-service/integration-tests-jobs-service-common/src/main/resources/org/acme/travels/timersCycle.bpmn
-timersCycle.bpmn
-#
apps-integration-tests/integration-tests-trusty-service/integration-tests-trusty-service-common/src/main/resources/TrafficViolation.dmn
-TrafficViolation.dmn
-#
data-audit/data-audit-common/src/main/resources/META-INF/data-audit-job-query.graphqls
-data-audit-job-query.graphqls
-#
data-audit/data-audit-common/src/main/resources/META-INF/data-audit-process-query.graphqls
-data-audit-process-query.graphqls
-#
data-audit/data-audit-common/src/main/resources/META-INF/data-audit-types.graphqls
-data-audit-types.graphqls
-#
data-audit/data-audit-common/src/main/resources/META-INF/data-audit-usertask-query.graphqls
-data-audit-usertask-query.graphqls
-#
data-audit/kogito-addons-data-audit-jpa/kogito-addons-data-audit-jpa-common/src/main/resources/META-INF/data-audit-orm.xml
-data-audit-orm.xml
-#
data-audit/kogito-addons-data-audit-jpa/kogito-addons-data-audit-jpa-common/src/main/resources/META-INF/services/org.kie.kogito.app.audit.spi.DataAuditStore
-org.kie.kogito.app.audit.spi.DataAuditStore
-#
data-audit/kogito-addons-data-audit-jpa/kogito-addons-data-audit-jpa-common/src/main/resources/META-INF/services/org.kie.kogito.app.audit.spi.GraphQLSchemaQueryProvider
-org.kie.kogito.app.audit.spi.GraphQLSchemaQueryProvider
-#
data-audit/kogito-addons-data-audit-springboot/src/test/resources/application.properties
-application.properties
-# data-index/data-index-graphql/src/main/resources/basic.schema.graphqls
-basic.schema.graphqls
-# data-index/data-index-graphql/src/main/resources/count.schema.graphqls
-count.schema.graphqls
-# data-index/data-index-graphql/src/main/resources/json.schema.graphqls
-json.schema.graphqls
-#
data-index/data-index-service/data-index-service-common/src/main/resources/domain.schema.graphqls
-domain.schema.graphqls
-#
/data-index/data-index-mutations/data-index-shared-output-mutation/src/main/resources/mutation.schema.graphqls
-mutation.schema.graphqls
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-infinispan/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-infinispan/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
-hello.svg
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-inmemory/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-inmemory/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
-hello.svg
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-jpa/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-jpa/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
-hello.svg
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-mongodb/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-mongodb/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
-hello.svg
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-postgresql/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
data-index/kogito-addons-quarkus-data-index/kogito-addons-quarkus-data-index-postgresql/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
-hello.svg
-#
data-index/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-infinispan/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
data-index/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-jpa/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
data-index/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-jpa/integration-tests-process/src/main/resources/META-INF/processSVG/hello.svg
-hello.svg
-#
data-index/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-mongodb/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
data-index/kogito-addons-quarkus-data-index-persistence/kogito-addons-quarkus-data-index-persistence-postgresql/integration-tests-process/src/main/resources/hello.bpmn
-hello.bpmn
-#
explainability/explainability-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
-org.mockito.plugins.MockMaker
-# jitexecutor/jitexecutor-bpmn/src/test/resources/MultipleInvalidModel.bpmn2
-MultipleInvalidModel.bpmn2
-# jitexecutor/jitexecutor-bpmn/src/test/resources/MultipleProcess.bpmn2
-MultipleProcess.bpmn2
-# jitexecutor/jitexecutor-bpmn/src/test/resources/SingleInvalidModel.bpmn2
-SingleInvalidModel.bpmn2
-# jitexecutor/jitexecutor-bpmn/src/test/resources/SingleProcess.bpmn
-SingleProcess.bpmn
-# jitexecutor/jitexecutor-bpmn/src/test/resources/SingleProcess.bpmn2
-SingleProcess.bpmn2
-# jitexecutor/jitexecutor-bpmn/src/test/resources/SingleUnparsableModel.bpmn2
-SingleUnparsableModel.bpmn2
-# jitexecutor/jitexecutor-bpmn/src/test/resources/UnparsableModel.bpmn2
-UnparsableModel.bpmn2
-# jitexecutor/jitexecutor-bpmn/src/test/resources/ValidModel.bpmn
-ValidModel.bpmn
-# jitexecutor/jitexecutor-dmn/src/main/resources/META-INF/resources/bundle.js
-bundle.js
-#
jobs-service/kogito-addons-jobs-service/kogito-addons-quarkus-jobs/src/test/resources/application.properties
-application.properties
-#
jobs-service/kogito-addons-jobs-service/kogito-addons-quarkus-jobs-service-embedded/runtime/src/main/resources/META-INF/services/org.eclipse.microprofile.config.spi.ConfigSource
-org.eclipse.microprofile.config.spi.ConfigSource
-#
trusty/trusty-service/trusty-service-common/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
-org.mockito.plugins.MockMaker
-#
data-index/data-index-service/data-index-service-inmemory/src/test/resources/ui/index.html
-index.html
-#
data-index/data-index-service/data-index-service-inmemory/src/test/resources/ui/styles.css
-styles.css
\ No newline at end of file
+explainability/explainability-service/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
+jitexecutor/jitexecutor-bpmn/src/test/resources/MultipleInvalidModel.bpmn2
+jitexecutor/jitexecutor-bpmn/src/test/resources/MultipleProcess.bpmn2
+jitexecutor/jitexecutor-bpmn/src/test/resources/SingleInvalidModel.bpmn2
+jitexecutor/jitexecutor-bpmn/src/test/resources/SingleProcess.bpmn
+jitexecutor/jitexecutor-bpmn/src/test/resources/SingleProcess.bpmn2
+jitexecutor/jitexecutor-bpmn/src/test/resources/SingleUnparsableModel.bpmn2
+jitexecutor/jitexecutor-bpmn/src/test/resources/UnparsableModel.bpmn2
+jitexecutor/jitexecutor-bpmn/src/test/resources/ValidModel.bpmn
+jitexecutor/jitexecutor-dmn/src/main/resources/META-INF/resources/bundle.js
+jobs/kogito-addons-springboot-embedded-jobs/src/test/resources/application.properties
+jobs-service/kogito-addons-jobs-service/kogito-addons-quarkus-jobs/src/test/resources/application.properties
+jobs-service/kogito-addons-jobs-service/kogito-addons-quarkus-jobs-service-embedded/runtime/src/main/resources/META-INF/services/org.eclipse.microprofile.config.spi.ConfigSource
+trusty/trusty-service/trusty-service-common/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]