This is an automated email from the ASF dual-hosted git repository.

gitgabrio pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-drools.git


The following commit(s) were added to refs/heads/main by this push:
     new 79d21bb8d5 [incubator-kie-issues#1839] Fix gradle build discovery 
(#6588)
79d21bb8d5 is described below

commit 79d21bb8d59a01fd14f692730a0b330945c4acce
Author: Gabriele Cardosi <[email protected]>
AuthorDate: Thu Feb 19 12:23:16 2026 +0100

    [incubator-kie-issues#1839] Fix gradle build discovery (#6588)
    
    * [incubator-kie-issues#1839] Fix gradle build discovery
    
    * [incubator-kie-issues#1839] Add gradle-examples in downstream build
    
    * [incubator-kie-issues#1839] Fix gradle build discovery - extend possible 
Gradle commands
---
 .ci/jenkins/dsl/jobs.groovy                         | 15 +++++++++++----
 .github/workflows/pr-downstream.yml                 |  5 ++++-
 .../java/org/drools/codegen/common/AppPaths.java    | 21 ++++++++++++++++++++-
 3 files changed, 35 insertions(+), 6 deletions(-)

diff --git a/.ci/jenkins/dsl/jobs.groovy b/.ci/jenkins/dsl/jobs.groovy
index 8f3a89459e..cdfb95e908 100644
--- a/.ci/jenkins/dsl/jobs.groovy
+++ b/.ci/jenkins/dsl/jobs.groovy
@@ -203,11 +203,18 @@ Map getMultijobPRConfig(JenkinsFolder jobFolder) {
                             env : [
                                     KOGITO_EXAMPLES_SUBFOLDER_POM: 
'serverless-workflow-examples/',
                             ],
-                            // Commented as not migrated
-                            // ], [
-                            //     id: 'kie-jpmml-integration',
-                            //     repository: 
'incubator-kie-jpmml-integration'
+                    ],  [
+                            id: 'kogito-gradle-examples',
+                            repository: 'incubator-kie-kogito-examples',
+                            env : [
+                                     KOGITO_EXAMPLES_SUBFOLDER_POM: 
'gradle-examples/',
+                            ],
                     ]
+                    // Commented as not migrated
+                    // ], [
+                    //     id: 'kie-jpmml-integration',
+                    //     repository: 'incubator-kie-jpmml-integration'
+                    // ]
             ]
     ]
 
diff --git a/.github/workflows/pr-downstream.yml 
b/.github/workflows/pr-downstream.yml
index 55f3a37492..eb4e07b86a 100644
--- a/.github/workflows/pr-downstream.yml
+++ b/.github/workflows/pr-downstream.yml
@@ -39,7 +39,7 @@ jobs:
     timeout-minutes: 180
     strategy:
       matrix:
-        job_name: [ optaplanner, kogito-runtimes, kogito-apps, 
kogito-quarkus-examples, kogito-springboot-examples, 
serverless-workflow-examples ]
+        job_name: [ optaplanner, kogito-runtimes, kogito-apps, 
kogito-quarkus-examples, kogito-springboot-examples, 
serverless-workflow-examples, kogito-gradle-examples  ]
         os: [ubuntu-latest]
         java-version: [17]
         maven-version: ['3.9.11']
@@ -60,6 +60,9 @@ jobs:
           - job_name: serverless-workflow-examples
             repository: incubator-kie-kogito-examples
             env_KOGITO_EXAMPLES_SUBFOLDER_POM: serverless-workflow-examples/
+          - job_name: kogito-gradle-examples
+            repository: incubator-kie-kogito-examples
+            env_KOGITO_EXAMPLES_SUBFOLDER_POM: gradle-examples/
           # - job_name: kie-jpmml-integration
           #   repository: kie-jpmml-integration
       fail-fast: false
diff --git 
a/drools-model/drools-codegen-common/src/main/java/org/drools/codegen/common/AppPaths.java
 
b/drools-model/drools-codegen-common/src/main/java/org/drools/codegen/common/AppPaths.java
index 677827bf9e..a4c9338d13 100644
--- 
a/drools-model/drools-codegen-common/src/main/java/org/drools/codegen/common/AppPaths.java
+++ 
b/drools-model/drools-codegen-common/src/main/java/org/drools/codegen/common/AppPaths.java
@@ -36,6 +36,8 @@ public class AppPaths {
 
     private static  final Logger LOG = LoggerFactory.getLogger(AppPaths.class);
 
+    private static final Set<String> GRADLE_COMMANDS = 
Set.of("GradleWorkerMain", "GradleMain", "GradleDaemon", "GradleWrapperMain");
+
     public enum BuildTool {
         MAVEN("target",
               Path.of("target","generated-sources"),
@@ -68,7 +70,24 @@ public class AppPaths {
 
         public static AppPaths.BuildTool findBuildTool() {
             String gradleAppName = System.getProperty("org.gradle.appname");
-            return (gradleAppName == null || gradleAppName.isEmpty()) ? MAVEN 
: GRADLE;
+            LOG.debug("********************");
+            LOG.debug("gradleAppName: >" + gradleAppName + "<");
+            String appleAwtApplicationName = 
System.getProperty("apple.awt.application.name");
+            LOG.debug("appleAwtApplicationName: >" + appleAwtApplicationName + 
"<");
+            String sunJavaCommand = System.getProperty("sun.java.command");
+            LOG.debug("sunJavaCommand: >" + sunJavaCommand + "<");
+            LOG.debug("********************");
+            return isGradleBuild(gradleAppName, appleAwtApplicationName, 
sunJavaCommand) ? GRADLE : MAVEN;
+        }
+
+        private static boolean isGradleBuild(String gradleAppName, String 
appleAwtApplicationName, String sunJavaCommand) {
+            return  gradleAppName != null  ||
+                    isGradleCommand(appleAwtApplicationName) ||
+                    isGradleCommand(sunJavaCommand);
+        }
+
+        private static boolean isGradleCommand(String property) {
+            return property != null && 
GRADLE_COMMANDS.stream().anyMatch(property::contains);
         }
     }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to