From 98e8e60b74f4d765b7418e123e3d5df56791c328 Mon Sep 17 00:00:00 2001 From: Roberto Oliveira Date: Wed, 24 Jan 2024 15:59:11 +0100 Subject: [PATCH] [SRVLOGIC-211] add script to remove modules that should not be in the productized build (#7) --- productized/modules | 14 ++++++++++++++ productized/remove_modules.sh | 28 ++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 productized/modules create mode 100755 productized/remove_modules.sh diff --git a/productized/modules b/productized/modules new file mode 100644 index 00000000000..f34bda68f58 --- /dev/null +++ b/productized/modules @@ -0,0 +1,14 @@ +pom.xml;kogito-maven-plugin,springboot +addons/common/pom.xml;events,monitoring,explainability,human-task-prediction,mail,tracing,task-management,marshallers +addons/common/persistence/pom.xml;infinispan,filesystem,mongodb,postgresql,rocksdb +api/pom.xml;kogito-api-incubation-common,kogito-api-incubation-common-objectmapper,kogito-api-incubation-application,kogito-api-incubation-processes,kogito-api-incubation-processes-services,kogito-api-incubation-predictions,kogito-api-incubation-predictions-services,kogito-api-incubation-decisions,kogito-api-incubation-decisions-services,kogito-api-incubation-rules,kogito-api-incubation-rules-services +drools/pom.xml;kogito-pmml-api-dependencies,kogito-efesto-drl,kogito-pmml-dependencies,kogito-pmml-openapi,kogito-pmml,kogito-scenario-simulation +kogito-codegen-modules/pom.xml;kogito-codegen-rules,kogito-codegen-decisions,kogito-codegen-predictions,kogito-codegen-integration-tests,kogito-codegen-sample +kogito-serverless-workflow/pom.xml;kogito-serverless-workflow-executor,kogito-serverless-workflow-executor-tests +quarkus/addons/pom.xml;explainability,mail,monitoring,process-svg,task-notification,tracing-decision,task-management,marshallers,process-definitions +quarkus/addons/events/pom.xml;decisions,predictions,rules,mongodb +quarkus/addons/jobs/pom.xml;messaging,knative-eventing +quarkus/addons/persistence/pom.xml;infinispan,kafka,filesystem,mongodb,postgresql,rocksdb +quarkus/extensions/pom.xml;kogito-quarkus-extension,kogito-quarkus-incubation-common,kogito-quarkus-processes-extension,kogito-quarkus-rules-extension,kogito-quarkus-decisions-extension,kogito-quarkus-predictions-extension +quarkus/extensions/kogito-quarkus-extension/pom.xml;kogito-quarkus-integration-test,kogito-quarkus-integration-test-maven-devmode +quarkus/integration-tests/pom.xml;integration-tests-quarkus-rules,integration-tests-quarkus-legacy-rules,integration-tests-quarkus-decisions,integration-tests-quarkus-resteasy-classic,integration-tests-quarkus-resteasy-reactive,integration-tests-kogito-plugin,integration-tests-quarkus-norest,integration-tests-quarkus-processes,integration-tests-quarkus-processes-reactive,integration-tests-quarkus-processes-persistence,integration-tests-quarkus-source-files,integration-tests-quarkus-gradle \ No newline at end of file diff --git a/productized/remove_modules.sh b/productized/remove_modules.sh new file mode 100755 index 00000000000..3fa7a02b446 --- /dev/null +++ b/productized/remove_modules.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash +# +# This script expects a configuration file separated by semicolon, where the first part is the pom and the second the modules to be removed from that pom +# It can be invoked from project root folder using: $ ./productized/remove_modules.sh ./productized/modules + +# fast fail +set -e +set -o pipefail + +if [ $# -lt 1 ]; +then + echo "$0: Missing arguments" + exit +fi + +config_file="${1}" +for line in `cat "$config_file"` +do + pom=$(echo $line | cut -d ';' -f1) + modules=$(echo $line | cut -d ';' -f2) + + modules_list=$(echo $modules | tr "," "\n") + for module in ${modules_list} + do + echo "Removing module ${module} from ${pom}" + sed -i "/${module}<\/module/d" ${pom} + done +done \ No newline at end of file