Skip to content

fix(qa): ensure webapp artifacts are built before integration-tests-webapps#2653

Merged
kthoms merged 2 commits into
mainfrom
copilot/fix-ci-integration-failure
Mar 25, 2026
Merged

fix(qa): ensure webapp artifacts are built before integration-tests-webapps#2653
kthoms merged 2 commits into
mainfrom
copilot/fix-ci-integration-failure

Conversation

Copilot AI commented Mar 25, 2026

Copy link
Copy Markdown
Contributor

Maven had no dependency edge from qa/integration-tests-webapps to the webapp WAR modules, so the reactor could schedule Operaton - QA Integration Tests - Webapps ITs before Operaton - Webapp - JBoss / Operaton - Webapp - Tomcat, causing maven-dependency-plugin:copy to fail with an unresolvable artifact error.

Changes

  • qa/integration-tests-webapps/pom.xml — added provided-scoped war dependencies in each server profile to force correct reactor ordering:
    • wildfly profile: org.operaton.bpm.webapp:operaton-webapp-jboss:war
    • tomcat profile: org.operaton.bpm.webapp:operaton-webapp-tomcat:war

Same pattern already used for the runtime modules (operaton-qa-wildfly-runtime, operaton-qa-tomcat-runtime).

<dependency>
  <!-- make sure webapp-jboss is built before this module -->
  <groupId>org.operaton.bpm.webapp</groupId>
  <artifactId>operaton-webapp-jboss</artifactId>
  <version>${project.version}</version>
  <scope>provided</scope>
  <type>war</type>
</dependency>

With -Pwildfly,webapps-integration, Operaton - Webapp - JBoss now precedes Operaton - QA Integration Tests - Webapps ITs in the reactor build order.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • repository.jboss.org
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java /usr/lib/jvm/temurin-17-jdk-amd64/bin/java -classpath /home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/boot/plexus-classworlds-2.8.0.jar -Dclassworlds.conf=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/bin/m2.conf -Dmaven.home=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1 -Dlibrary.jansi.path=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/lib/jansi-native -Dmaven.multiModuleProjectDirectory=/home/REDACTED/work/operaton/operaton org.codehaus.plexus.classworlds.launcher.Launcher -DskipTests -Pdistro,distro-webjar,h2-in-memory,tomcat,distro-tomcat validate (dns block)
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java /usr/lib/jvm/temurin-17-jdk-amd64/bin/java -classpath /home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/boot/plexus-classworlds-2.8.0.jar -Dclassworlds.conf=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/bin/m2.conf -Dmaven.home=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1 -Dlibrary.jansi.path=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/lib/jansi-native -Dmaven.multiModuleProjectDirectory=/home/REDACTED/work/operaton/operaton org.codehaus.plexus.classworlds.launcher.Launcher -DskipTests -Pwildfly validate (dns block)
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java /usr/lib/jvm/temurin-17-jdk-amd64/bin/java -classpath /home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/boot/plexus-classworlds-2.8.0.jar -Dclassworlds.conf=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/bin/m2.conf -Dmaven.home=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1 -Dlibrary.jansi.path=/home/REDACTED/.m2/wrapper/dists/apache-maven-3.9.9/3477a4f1/lib/jansi-native -Dmaven.multiModuleProjectDirectory=/home/REDACTED/work/operaton/operaton org.codehaus.plexus.classworlds.launcher.Launcher -DskipTests -Pwildfly,webapps-integration validate (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>Integration on CI failing due to missing web app</issue_title>
<issue_description>## What needs to be done?

The integration tests are failing since some days.

To reproduce run

.devenv/scripts/build/build-and-run-integration-tests.sh --testsuite=engine --distro=wildfly
Error: 5,025 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:3.10.0:copy (copy-war) 
on project operaton-qa-integration-tests-webapps: Unable to find/resolve artifact. 
The following artifacts could not be resolved: org.operaton.bpm.webapp:operaton-webapp-jboss:war:2.1.0-SNAPSHOT (absent): 
Could not find artifact org.operaton.bpm.webapp:operaton-webapp-jboss:war:2.1.0-SNAPSHOT in JBoss public 

The build has to make sure that the webapp modules that are copied by maven-dependencies-plugin are built before the qa/integration-tests-webapps module. This must be ensured by that module.

Additional context

Logs

Build order: Operaton - Webapp - JBoss is built after Operaton - QA Integration Tests - Webapps ITs

05:48:47,200 [INFO] Error stacktraces are turned on.
05:48:47,248 [INFO] Scanning for projects...
05:48:48,082 [INFO] ------------------------------------------------------------------------
05:48:48,082 [INFO] Reactor Build Order:
05:48:48,082 [INFO] 
05:48:48,083 [INFO] Operaton - Root POM                                                [pom]
05:48:48,083 [INFO] Operaton - Parent POM                                              [pom]
05:48:48,083 [INFO] Operaton - Commons - Root POM                                      [pom]
05:48:48,083 [INFO] Operaton - Commons - Logging                                       [jar]
05:48:48,083 [INFO] Operaton - Commons - Utils                                         [jar]
05:48:48,083 [INFO] Operaton - ArchUnit                                                [jar]
05:48:48,083 [INFO] Operaton - Model APIs                                              [pom]
05:48:48,084 [INFO] Operaton - XML Model API                                           [jar]
05:48:48,084 [INFO] Operaton - BPMN Model API                                          [jar]
05:48:48,084 [INFO] Operaton - CMMN Model API                                          [jar]
05:48:48,084 [INFO] Operaton - JUEL                                                    [jar]
05:48:48,084 [INFO] Operaton - Commons - Typed Values                                  [jar]
05:48:48,084 [INFO] Operaton - DMN - Model API                                         [jar]
05:48:48,084 [INFO] Operaton - DMN - Engine - Root                                     [pom]
05:48:48,084 [INFO] Operaton - DMN - Engine - FEEL - API                               [jar]
05:48:48,084 [INFO] Operaton - DMN - Engine - FEEL - JUEL                              [jar]
05:48:48,084 [INFO] Operaton - DMN - Engine - FEEL - SCALA                             [jar]
05:48:48,084 [INFO] Operaton - DMN - Engine                                            [jar]
05:48:48,084 [INFO] Operaton - Commons - Testing                                       [jar]
05:48:48,084 [INFO] Operaton - Database Settings                                       [pom]
05:48:48,084 [INFO] Operaton - Test Utils - Testcontainers                             [jar]
05:48:48,085 [INFO] Operaton - Engine                                                  [jar]
05:48:48,085 [INFO] Operaton - Engine - Spring                                         [jar]
05:48:48,090 [INFO] Operaton - Spring Boot Starter - QA - Liquibase                    [jar]
05:48:48,090 [INFO] Operaton - Example - Root                                          [pom]
05:48:48,090 [INFO] Operaton - Example - Invoice                                       [war]
05:48:48,090 [INFO] Operaton - Spring Boot Starter - QA - Webapps                      [pom]
05:48:48,090 [INFO] Operaton - Spring Boot Starter - QA - Webapps Invoice Example      [jar]
05:48:48,090 [INFO] Operaton - Spring Boot Starter - QA - Webapps Runtime              [jar]
05:48:48,090 [INFO] Operaton - Quarkus Extension - Parent                              [pom]
05:48:48,090 [INFO] Operaton - Quarkus Extension - Engine - Parent                     [pom]
05:48:48,090 [INFO] Operaton - Quarkus Extension - Engine - Runtime                    [jar]
05:48:48,091 [INFO] Operaton - Quarkus Extension - Engine - Deployment                 [jar]
05:48:48,091 [INFO] Operaton - Quarkus Extension - Engine - CDI QA                     [jar]
05:48:48,091 [INFO] Operaton - QA                                                      [pom]
05:48:48,091 [INFO] Operaton - QA - Ensure clean DB plugin                             [jar]
05:48:48,091 [INFO] Operaton - QA - Arquillian extensions                              [jar]
05:48:48,091 [INFO] Operaton - Client                                            ...

</details>



<!-- START COPILOT CODING AGENT SUFFIX -->

- Fixes operaton/operaton#2652

<!-- START COPILOT CODING AGENT TIPS -->
---

📱 Kick off Copilot coding agent tasks wherever you are with [GitHub Mobile](https://gh.io/cca-mobile-docs), available on iOS and Android.

…egration-tests-webapps

Co-authored-by: kthoms <265597+kthoms@users.noreply.github.com>
Agent-Logs-Url: https://github.com/operaton/operaton/sessions/941cb193-d469-4af2-b2b1-e3361b77b2c4
Copilot AI changed the title [WIP] Fix CI integration failure due to missing web app fix(qa): ensure webapp artifacts are built before integration-tests-webapps Mar 25, 2026
Copilot AI requested a review from kthoms March 25, 2026 07:47
@sonarqubecloud

Copy link
Copy Markdown

@kthoms kthoms marked this pull request as ready for review March 25, 2026 09:56
Copilot AI review requested due to automatic review settings March 25, 2026 09:57
@kthoms kthoms merged commit 390f2ee into main Mar 25, 2026
18 checks passed
@kthoms kthoms deleted the copilot/fix-ci-integration-failure branch March 25, 2026 09:57
@kthoms kthoms added the build Changes related to the build system, including Maven configurations, GitHub Actions workflows label Mar 25, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Ensures Maven reactor ordering so the QA webapps integration-test module builds only after the relevant webapp WAR artifacts are produced, preventing maven-dependency-plugin:copy from failing due to missing/uninstalled WARs during the build phase.

Changes:

  • Add a provided-scoped WAR dependency on operaton-webapp-tomcat in the tomcat profile to force upstream build order.
  • Add a provided-scoped WAR dependency on operaton-webapp-jboss in the wildfly profile to force upstream build order.

kthoms added a commit that referenced this pull request Mar 25, 2026
…s-webapps (#2653)

---------

Agent-Logs-Url: https://github.com/operaton/operaton/sessions/941cb193-d469-4af2-b2b1-e3361b77b2c4
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: kthoms <265597+kthoms@users.noreply.github.com>
(cherry picked from commit 390f2ee)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build Changes related to the build system, including Maven configurations, GitHub Actions workflows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants