From b43849b84bce3dc3e50ae9dd378138edc5adf545 Mon Sep 17 00:00:00 2001 From: Marinov Avgustin Date: Fri, 17 Nov 2023 12:02:46 +0200 Subject: [PATCH] Make use of dash maven plugin to generate dependencies Signed-off-by: Marinov Avgustin --- .3rd-party/DEPENDENCIES | 4 + .3rd-party/hawkbit-maven.deps | 144 ---------------------------------- check-dependencies.sh | 32 +++----- pom.xml | 27 +++++++ 4 files changed, 41 insertions(+), 166 deletions(-) delete mode 100644 .3rd-party/hawkbit-maven.deps diff --git a/.3rd-party/DEPENDENCIES b/.3rd-party/DEPENDENCIES index 6ef9eea666..f3696414a1 100644 --- a/.3rd-party/DEPENDENCIES +++ b/.3rd-party/DEPENDENCIES @@ -68,6 +68,9 @@ maven/mavencentral/net.minidev/json-smart/2.4.11, Apache-2.0, approved, #3288 maven/mavencentral/org.apache.commons/commons-lang3/3.12.0, Apache-2.0, approved, clearlydefined maven/mavencentral/org.apache.logging.log4j/log4j-api/2.17.2, Apache-2.0, approved, clearlydefined maven/mavencentral/org.apache.logging.log4j/log4j-to-slf4j/2.17.2, Apache-2.0, approved, #2163 +maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-core/9.0.82, Apache-2.0 AND (CDDL-1.0 OR GPL-2.0 WITH Classpath-exception-2.0), approved, CQ20188 +maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-el/9.0.82, Apache-2.0, approved, CQ20193 +maven/mavencentral/org.apache.tomcat.embed/tomcat-embed-websocket/9.0.82, Apache-2.0, approved, CQ20194 maven/mavencentral/org.aspectj/aspectjrt/1.9.7, EPL-1.0, approved, tools.aspectj maven/mavencentral/org.aspectj/aspectjweaver/1.9.7, EPL-1.0, approved, tools.aspectj maven/mavencentral/org.checkerframework/checker-qual/3.19.0, MIT, approved, clearlydefined @@ -97,6 +100,7 @@ maven/mavencentral/org.springframework.boot/spring-boot-starter-json/2.7.17, Apa maven/mavencentral/org.springframework.boot/spring-boot-starter-logging/2.7.17, Apache-2.0, approved, #4327 maven/mavencentral/org.springframework.boot/spring-boot-starter-oauth2-client/2.7.17, Apache-2.0, approved, #7511 maven/mavencentral/org.springframework.boot/spring-boot-starter-oauth2-resource-server/2.7.17, Apache-2.0, approved, #4312 +maven/mavencentral/org.springframework.boot/spring-boot-starter-tomcat/2.7.17, Apache-2.0, approved, #4305 maven/mavencentral/org.springframework.boot/spring-boot-starter-web/2.7.17, Apache-2.0, approved, #4304 maven/mavencentral/org.springframework.boot/spring-boot-starter/2.7.17, Apache-2.0, approved, #4308 maven/mavencentral/org.springframework.boot/spring-boot/2.7.17, Apache-2.0, approved, #4322 diff --git a/.3rd-party/hawkbit-maven.deps b/.3rd-party/hawkbit-maven.deps deleted file mode 100644 index 23250775dc..0000000000 --- a/.3rd-party/hawkbit-maven.deps +++ /dev/null @@ -1,144 +0,0 @@ -ch.qos.logback:logback-classic:jar:1.2.12 -ch.qos.logback:logback-core:jar:1.2.12 -com.cronutils:cron-utils:jar:9.2.1 -com.fasterxml.jackson.core:jackson-annotations:jar:2.13.5 -com.fasterxml.jackson.core:jackson-core:jar:2.13.5 -com.fasterxml.jackson.core:jackson-databind:jar:2.13.5 -com.fasterxml.jackson.dataformat:jackson-dataformat-cbor:jar:2.13.5 -com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:2.13.5 -com.fasterxml.jackson.datatype:jackson-datatype-jdk8:jar:2.13.5 -com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.13.5 -com.fasterxml.jackson.module:jackson-module-parameter-names:jar:2.13.5 -com.fasterxml:classmate:jar:1.5.1 -com.github.ben-manes.caffeine:caffeine:jar:2.9.3 -com.github.gwtd3:gwt-d3-api:jar:1.3.0 -com.github.gwtd3:gwt-d3-js:jar:3.5.11 -com.github.gwtd3:gwt-d3-js:jar:sources:3.5.11 -com.github.stephenc.jcip:jcip-annotations:jar:1.0-1 -com.google.errorprone:error_prone_annotations:jar:2.10.0 -com.google.guava:failureaccess:jar:1.0.1 -com.google.guava:guava:jar:32.1.2-jre -com.google.guava:listenablefuture:jar:9999.0-empty-to-avoid-conflict-with-guava -com.google.gwt:gwt-elemental:jar:2.8.2 -com.google.gwt:gwt-user:jar:2.9.0 -com.google.jsinterop:jsinterop-annotations:jar:2.0.0 -com.h2database:h2:jar:2.2.222 -com.jayway.jsonpath:json-path:jar:2.7.0 -com.microsoft.sqlserver:mssql-jdbc:jar:10.2.3.jre8 -com.nimbusds:content-type:jar:2.2 -com.nimbusds:lang-tag:jar:1.6 -com.nimbusds:nimbus-jose-jwt:jar:9.22 -com.nimbusds:oauth2-oidc-sdk:jar:9.35 -com.rabbitmq:amqp-client:jar:5.14.3 -com.vaadin.external.atmosphere:atmosphere-runtime:jar:2.4.30.vaadin4 -com.vaadin.external.flute:flute:jar:1.3.0.gg2 -com.vaadin.external.gwt:gwt-elemental:jar:2.8.2.vaadin2 -com.vaadin.external.slf4j:vaadin-slf4j-jdk14:jar:1.6.1 -com.vaadin.external:gentyref:jar:1.2.0.vaadin1 -com.vaadin:vaadin-client:jar:8.14.3 -com.vaadin:vaadin-push:jar:8.14.3 -com.vaadin:vaadin-sass-compiler:jar:0.9.13 -com.vaadin:vaadin-server:jar:8.14.3 -com.vaadin:vaadin-shared:jar:8.14.3 -com.vaadin:vaadin-spring-boot:jar:3.2.1 -com.vaadin:vaadin-spring:jar:3.2.1 -com.vaadin:vaadin-themes:jar:8.14.3 -com.zaxxer:HikariCP:jar:4.0.3 -commons-io:commons-io:jar:2.13.0 -cz.jirutka.rsql:rsql-parser:jar:2.1.0 -io.projectreactor:reactor-core:jar:3.4.33 -io.protostuff:protostuff-api:jar:1.8.0 -io.protostuff:protostuff-collectionschema:jar:1.8.0 -io.protostuff:protostuff-core:jar:1.8.0 -io.protostuff:protostuff-runtime:jar:1.8.0 -io.swagger.core.v3:swagger-annotations:jar:2.2.9 -io.swagger.core.v3:swagger-core:jar:2.2.9 -io.swagger.core.v3:swagger-models:jar:2.2.9 -jakarta.activation:jakarta.activation-api:jar:1.2.2 -jakarta.annotation:jakarta.annotation-api:jar:1.3.5 -jakarta.persistence:jakarta.persistence-api:jar:2.2.3 -jakarta.transaction:jakarta.transaction-api:jar:1.3.3 -jakarta.validation:jakarta.validation-api:jar:2.0.2 -jakarta.xml.bind:jakarta.xml.bind-api:jar:2.3.3 -javax.activation:javax.activation-api:jar:1.2.0 -javax.servlet:javax.servlet-api:jar:4.0.1 -javax.validation:validation-api:jar:2.0.1.Final -javax.xml.bind:jaxb-api:jar:2.3.1 -net.minidev:accessors-smart:jar:2.4.11 -net.minidev:json-smart:jar:2.4.11 -org.apache.commons:commons-lang3:jar:3.12.0 -org.apache.logging.log4j:log4j-api:jar:2.17.2 -org.apache.logging.log4j:log4j-to-slf4j:jar:2.17.2 -org.aspectj:aspectjrt:jar:1.9.7 -org.aspectj:aspectjweaver:jar:1.9.7 -org.checkerframework:checker-qual:jar:3.19.0 -org.checkerframework:checker-qual:jar:3.33.0 -org.checkerframework:checker-qual:jar:3.5.0 -org.flywaydb:flyway-core:jar:8.5.13 -org.flywaydb:flyway-mysql:jar:8.5.13 -org.hibernate.validator:hibernate-validator:jar:6.2.5.Final -org.jboss.logging:jboss-logging:jar:3.4.3.Final -org.jsoup:jsoup:jar:1.16.1 -org.ow2.asm:asm:jar:9.3 -org.postgresql:postgresql:jar:42.3.8 -org.reactivestreams:reactive-streams:jar:1.0.4 -org.slf4j:jul-to-slf4j:jar:1.7.36 -org.slf4j:slf4j-api:jar:1.7.36 -org.springdoc:springdoc-openapi-common:jar:1.7.0 -org.springdoc:springdoc-openapi-security:jar:1.7.0 -org.springdoc:springdoc-openapi-ui:jar:1.7.0 -org.springdoc:springdoc-openapi-webmvc-core:jar:1.7.0 -org.springframework.amqp:spring-amqp:jar:2.4.17 -org.springframework.amqp:spring-rabbit:jar:2.4.17 -org.springframework.boot:spring-boot-autoconfigure:jar:2.7.17 -org.springframework.boot:spring-boot-starter-aop:jar:2.7.17 -org.springframework.boot:spring-boot-starter-data-jpa:jar:2.7.17 -org.springframework.boot:spring-boot-starter-jdbc:jar:2.7.17 -org.springframework.boot:spring-boot-starter-json:jar:2.7.17 -org.springframework.boot:spring-boot-starter-logging:jar:2.7.17 -org.springframework.boot:spring-boot-starter-oauth2-client:jar:2.7.17 -org.springframework.boot:spring-boot-starter-oauth2-resource-server:jar:2.7.17 -org.springframework.boot:spring-boot-starter-web:jar:2.7.17 -org.springframework.boot:spring-boot-starter:jar:2.7.17 -org.springframework.boot:spring-boot:jar:2.7.17 -org.springframework.cloud:spring-cloud-bus:jar:3.1.2 -org.springframework.cloud:spring-cloud-commons:jar:3.1.7 -org.springframework.cloud:spring-cloud-context:jar:3.1.7 -org.springframework.cloud:spring-cloud-starter:jar:3.1.7 -org.springframework.data:spring-data-commons:jar:2.7.17 -org.springframework.data:spring-data-jpa:jar:2.7.17 -org.springframework.hateoas:spring-hateoas:jar:1.5.5 -org.springframework.integration:spring-integration-core:jar:5.5.19 -org.springframework.plugin:spring-plugin-core:jar:2.0.0.RELEASE -org.springframework.retry:spring-retry:jar:1.3.4 -org.springframework.security:spring-security-aspects:jar:5.7.11 -org.springframework.security:spring-security-config:jar:5.7.11 -org.springframework.security:spring-security-core:jar:5.7.11 -org.springframework.security:spring-security-crypto:jar:5.7.11 -org.springframework.security:spring-security-oauth2-client:jar:5.7.11 -org.springframework.security:spring-security-oauth2-core:jar:5.7.11 -org.springframework.security:spring-security-oauth2-jose:jar:5.7.11 -org.springframework.security:spring-security-oauth2-resource-server:jar:5.7.11 -org.springframework.security:spring-security-web:jar:5.7.11 -org.springframework:spring-aop:jar:5.3.30 -org.springframework:spring-aspects:jar:5.3.30 -org.springframework:spring-beans:jar:5.3.30 -org.springframework:spring-context-support:jar:5.3.30 -org.springframework:spring-context:jar:5.3.30 -org.springframework:spring-core:jar:5.3.30 -org.springframework:spring-expression:jar:5.3.30 -org.springframework:spring-jcl:jar:5.3.30 -org.springframework:spring-jdbc:jar:5.3.30 -org.springframework:spring-messaging:jar:5.3.30 -org.springframework:spring-orm:jar:5.3.30 -org.springframework:spring-tx:jar:5.3.30 -org.springframework:spring-web:jar:5.3.30 -org.springframework:spring-webmvc:jar:5.3.30 -org.springframework:spring-websocket:jar:5.3.30 -org.vaadin.alump.distributionbar:dbar-addon:jar:3.0.1 -org.vaadin.spring.addons:vaadin-spring-addon-eventbus:jar:2.0.0.RELEASE -org.vaadin.spring.extensions:vaadin-spring-ext-core:jar:2.0.0.RELEASE -org.vaadin.spring.extensions:vaadin-spring-ext-security:jar:2.0.0.RELEASE -org.w3c.css:sac:jar:1.3 -org.webjars:swagger-ui:jar:4.18.2 -org.yaml:snakeyaml:jar:1.33 diff --git a/check-dependencies.sh b/check-dependencies.sh index de4debeb68..91dfbb7509 100755 --- a/check-dependencies.sh +++ b/check-dependencies.sh @@ -9,28 +9,16 @@ # SPDX-License-Identifier: EPL-2.0 # -DASH_LICENSE_JAR=$1 -shift +DASH_SUMMARY=".3rd-party/DEPENDENCIES" +DASH_REVIEW_SUMMARY=".3rd-party/DEPENDENCIES_REVIEW" -if [ ! -f "$DASH_LICENSE_JAR" ]; then - echo "This script can be used to update the DEPENDENCIES" - echo "file with the result of checking the Hawkbit maven" - echo "dependencies using the Dash License Tool." - echo "" - echo "Usage: $0 [..]" - exit 1 +if [ -z "$1" ] +then + DASH_IP_LAB= +else + DASH_IP_LAB="-Ddash.review.summary=${DASH_REVIEW_SUMMARY} -Ddash.iplab.token=$1" fi -HAWKBIT_MAVEN_DEPS=".3rd-party/hawkbit-maven.deps" -DEPENDENCIES=".3rd-party/DEPENDENCIES" - -mvn dependency:list \ - -DexcludeGroupIds=org.eclipse,org.junit \ - -pl '!org.eclipse.hawkbit:hawkbit-repository-test,!org.eclipse.hawkbit:hawkbit-dmf-rabbitmq-test' | \ - grep -Poh "\S+:(runtime|compile|provided)" | \ - sed -e 's/^\(.*\)\:.*$/\1/' | \ - sort | \ - uniq > $HAWKBIT_MAVEN_DEPS - -java -Dorg.eclipse.dash.timeout=60 -jar "${DASH_LICENSE_JAR}" -batch 90 -summary ${DEPENDENCIES} ${HAWKBIT_MAVEN_DEPS} "$@" -sort -o ${DEPENDENCIES} ${DEPENDENCIES} \ No newline at end of file +mvn clean install -DskipTests -Ddash.skip=false \ + --projects '!org.eclipse.hawkbit:hawkbit-repository-test,!org.eclipse.hawkbit:hawkbit-dmf-rabbitmq-test' \ + -Ddash.summary=${DASH_SUMMARY} ${DASH_IP_LAB} \ No newline at end of file diff --git a/pom.xml b/pom.xml index 359451b229..ca87582950 100644 --- a/pom.xml +++ b/pom.xml @@ -136,10 +136,24 @@ https://maven.vaadin.com/vaadin-addons + + + dash-licenses + https://repo.eclipse.org/content/repositories/dash-licenses + + 0.4.0-SNAPSHOT + true + true + iot.hawkbit + ${project.build.directory}/dash/summary + + ${project.build.directory}/dash/review-summary + org.eclipse,org.junit + true 17 @@ -374,6 +388,19 @@ + + org.eclipse.dash + license-tool-plugin + 1.0.2 + + + license-check + + license-check + + + +