This is an automated email from the ASF dual-hosted git repository.
olamy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git
The following commit(s) were added to refs/heads/master by this push:
new b2d4904bd Fix jenkins build (#3314)
b2d4904bd is described below
commit b2d4904bd1b432a1df616c806fc4ff96e74fd03b
Author: Slawomir Jaranowski <[email protected]>
AuthorDate: Thu Mar 12 06:57:01 2026 +0100
Fix jenkins build (#3314)
* Fix Jenkins build
* relax timeout which makes test really flaky, we cannot guarantee a thread
will make x operations in a given time
Signed-off-by: Olivier Lamy <[email protected]>
* use recordCoverage
* add JaCoCo reports
* recordCoverage and ignoreParsingErrors
* fix sourceDirectories
* jacoco configuration
* drop forkedProcessTimeoutInSeconds
* use junit report in jenkins
---------
Signed-off-by: Olivier Lamy <[email protected]>
Co-authored-by: Olivier Lamy <[email protected]>
---
Jenkinsfile | 14 +++++----
maven-failsafe-plugin/pom.xml | 14 ++++++---
maven-surefire-common/pom.xml | 19 +-----------
.../maven/plugin/surefire/extensions/E2ETest.java | 18 +++++------
maven-surefire-plugin/pom.xml | 10 +++----
maven-surefire-report-plugin/pom.xml | 10 +++----
pom.xml | 16 ++++++++++
surefire-api/pom.xml | 13 +-------
surefire-booter/pom.xml | 13 +-------
surefire-extensions-api/pom.xml | 5 +---
surefire-its/pom.xml | 35 ++++++++++++++--------
surefire-logger-api/pom.xml | 13 +-------
surefire-providers/common-java5/pom.xml | 13 +-------
surefire-providers/surefire-junit-platform/pom.xml | 13 +-------
surefire-report-parser/pom.xml | 13 +-------
15 files changed, 81 insertions(+), 138 deletions(-)
diff --git a/Jenkinsfile b/Jenkinsfile
index ab3715587..b32c4a654 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -32,7 +32,8 @@ properties(
final def oses = ['linux':'ubuntu']
final def mavens = ['3.x.x']
// all non-EOL versions and the first EA
-final def jdks = [21, 17, 11, 8]
+// final def jdks = [21, 17, 11, 8]
+final def jdks = [21]
final def options = ['-e', '-V', '-B', '-nsu', '-P', 'run-its']
final def goals = ['clean', 'install']
@@ -141,10 +142,13 @@ def buildProcess(String stageKey, String jdkName, String
mvnName, goals, options
} finally {
try {
if (makeReports) {
- jacoco(changeBuildStatus: false,
- execPattern: '**/target/jacoco*.exec',
- sourcePattern: sourcesPatternCsv(),
- classPattern: classPatternCsv())
+ recordCoverage id: "coverage-${jdkName}", name: "Coverage
${jdkName}",
+ tools: [
+ [parser: 'JACOCO']
+ ],
+ sourceCodeRetention: 'MODIFIED',
+ sourceDirectories: [[path: '**/src/main/java']],
+ ignoreParsingErrors: true
junit(healthScaleFactor: 0.0,
allowEmptyResults: true,
diff --git a/maven-failsafe-plugin/pom.xml b/maven-failsafe-plugin/pom.xml
index a730cf518..d385dfe0b 100644
--- a/maven-failsafe-plugin/pom.xml
+++ b/maven-failsafe-plugin/pom.xml
@@ -145,22 +145,27 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
<executions>
<execution>
<id>jacoco-agent</id>
<goals>
<goal>prepare-agent</goal>
+ <goal>prepare-agent-integration</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>jacoco-report</id>
+ <goals>
+ <goal>report-aggregate</goal>
</goals>
+ <phase>verify</phase>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
</configuration>
<dependencies>
<dependency>
@@ -299,6 +304,7 @@
<integration-test-stop-port>${failsafe-integration-test-stop-port}</integration-test-stop-port>
</properties>
<debug>true</debug>
+ <mavenOpts>@{argLine}</mavenOpts>
</configuration>
</execution>
</executions>
diff --git a/maven-surefire-common/pom.xml b/maven-surefire-common/pom.xml
index 2a1ee57ab..d8a5f81a0 100644
--- a/maven-surefire-common/pom.xml
+++ b/maven-surefire-common/pom.xml
@@ -187,28 +187,11 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>jacoco-instrumentation</id>
- <goals>
- <goal>instrument</goal>
- </goals>
- </execution>
- <execution>
- <id>restore-classes</id>
- <goals>
- <goal>restore-instrumented-classes</goal>
- </goals>
- </execution>
- </executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests}</argLine>
- <systemPropertyVariables>
-
<jacoco-agent.destfile>${project.build.directory}/jacoco.exec</jacoco-agent.destfile>
- </systemPropertyVariables>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
</configuration>
<dependencies>
<dependency>
diff --git
a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/extensions/E2ETest.java
b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/extensions/E2ETest.java
index 039e8617e..f1b390cc2 100644
---
a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/extensions/E2ETest.java
+++
b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/extensions/E2ETest.java
@@ -40,8 +40,6 @@
import org.apache.maven.surefire.api.booter.Command;
import org.apache.maven.surefire.api.event.Event;
import org.apache.maven.surefire.api.fork.ForkNodeArguments;
-import org.apache.maven.surefire.api.report.OutputReportEntry;
-import org.apache.maven.surefire.api.report.TestOutputReceiver;
import org.apache.maven.surefire.api.report.TestOutputReportEntry;
import org.apache.maven.surefire.booter.spi.EventChannelEncoder;
import
org.apache.maven.surefire.booter.spi.SurefireMasterProcessChannelProcessorFactory;
@@ -123,12 +121,12 @@ public void handleEvent(@Nonnull Event event) {
Thread t = new Thread() {
@Override
public void run() {
- TestOutputReceiver<OutputReportEntry> target = new
TestOutputReceiver() {
- @Override
- public void writeTestOutput(OutputReportEntry reportEntry)
{
- encoder.testOutput(stdOutln(reportEntry.getLog()));
- }
- };
+ // TestOutputReceiver<OutputReportEntry> target
= new TestOutputReceiver() {
+ // @Override
+ // public void
writeTestOutput(OutputReportEntry reportEntry) {
+ //
encoder.testOutput(stdOutln(reportEntry.getLog()));
+ // }
+ // };
// PrintStream out = System.out;
// PrintStream err = System.err;
@@ -164,9 +162,9 @@ public void writeTestOutput(OutputReportEntry reportEntry) {
// 1.0 seconds while using the encoder/decoder
assertThat(readTime.get())
.describedAs("The performance test should assert 1.0 s of read
time. "
- + "The limit 10 s guarantees that the read time does
not exceed this limit on overloaded CPU.")
+ + "The limit 30 s guarantees that the read time does
not exceed this limit on overloaded CPU.")
.isPositive()
- .isLessThanOrEqualTo(10_000L);
+ .isLessThanOrEqualTo(30_000L);
}
@Test
diff --git a/maven-surefire-plugin/pom.xml b/maven-surefire-plugin/pom.xml
index 1e65ce68b..351de7a77 100644
--- a/maven-surefire-plugin/pom.xml
+++ b/maven-surefire-plugin/pom.xml
@@ -90,22 +90,20 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
<executions>
<execution>
- <id>jacoco-agent</id>
+ <id>jacoco-report</id>
<goals>
- <goal>prepare-agent</goal>
+ <goal>report-aggregate</goal>
</goals>
+ <phase>verify</phase>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
</configuration>
<dependencies>
<dependency>
diff --git a/maven-surefire-report-plugin/pom.xml
b/maven-surefire-report-plugin/pom.xml
index 1c4707188..1698740ee 100644
--- a/maven-surefire-report-plugin/pom.xml
+++ b/maven-surefire-report-plugin/pom.xml
@@ -205,22 +205,20 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
<executions>
<execution>
- <id>jacoco-agent</id>
+ <id>jacoco-report</id>
<goals>
- <goal>prepare-agent</goal>
+ <goal>report-aggregate</goal>
</goals>
+ <phase>verify</phase>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
<classpathDependencyExcludes>
<classpathDependencyExclude>org.fusesource.jansi:jansi</classpathDependencyExclude>
</classpathDependencyExcludes>
diff --git a/pom.xml b/pom.xml
index df2b07b1d..408aea829 100644
--- a/pom.xml
+++ b/pom.xml
@@ -342,6 +342,7 @@
<jmx>false</jmx>-->
<formats>
<format>HTML</format>
+ <format>XML</format>
</formats>
<includes>
<include>**/failsafe/*</include>
@@ -355,7 +356,22 @@
<exclude>org/jacoco/**/*</exclude>
<exclude>com/vladium/emma/rt/*</exclude>
</excludes>
+ <includeCurrentProject>true</includeCurrentProject>
</configuration>
+ <executions>
+ <execution>
+ <id>jacoco-agent</id>
+ <goals>
+ <goal>prepare-agent</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>jacoco-report</id>
+ <goals>
+ <goal>report</goal>
+ </goals>
+ </execution>
+ </executions>
</plugin>
</plugins>
</pluginManagement>
diff --git a/surefire-api/pom.xml b/surefire-api/pom.xml
index 27615d94b..9459e9daf 100644
--- a/surefire-api/pom.xml
+++ b/surefire-api/pom.xml
@@ -79,22 +79,11 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
- <executions>
- <execution>
- <id>jacoco-agent</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- </executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
</configuration>
<dependencies>
<dependency>
diff --git a/surefire-booter/pom.xml b/surefire-booter/pom.xml
index 5d0ac19ab..3ab0e09e0 100644
--- a/surefire-booter/pom.xml
+++ b/surefire-booter/pom.xml
@@ -109,22 +109,11 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
- <executions>
- <execution>
- <id>jacoco-agent</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- </executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
<useFile>true</useFile>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
</configuration>
diff --git a/surefire-extensions-api/pom.xml b/surefire-extensions-api/pom.xml
index 16a00b099..b49b5a4eb 100644
--- a/surefire-extensions-api/pom.xml
+++ b/surefire-extensions-api/pom.xml
@@ -73,9 +73,6 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
<executions>
<execution>
<id>jacoco-agent</id>
@@ -88,7 +85,7 @@
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
</configuration>
<dependencies>
<dependency>
diff --git a/surefire-its/pom.xml b/surefire-its/pom.xml
index a5213c1eb..8ceed70c6 100644
--- a/surefire-its/pom.xml
+++ b/surefire-its/pom.xml
@@ -43,6 +43,7 @@
<junit.vintage.execution.parallel.classes>false</junit.vintage.execution.parallel.classes>
<junit.vintage.execution.parallel.methods>false</junit.vintage.execution.parallel.methods>
<junit.vintage.execution.parallel.pool>5</junit.vintage.execution.parallel.pool>
+ <maven.clean.fast>true</maven.clean.fast>
</properties>
<dependencies>
@@ -58,6 +59,18 @@
<version>${project.version}</version>
<scope>runtime</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
<dependency>
<groupId>org.apache.maven.shared</groupId>
<artifactId>maven-verifier</artifactId>
@@ -187,20 +200,20 @@
<executions>
<execution>
<id>jacoco-agent</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- <execution>
- <id>jacoco-agent-it</id>
<goals>
<goal>prepare-agent-integration</goal>
</goals>
<configuration>
<propertyName>jacoco-it.agent</propertyName>
- <destFile>${project.build.directory}/jacoco.exec</destFile>
</configuration>
</execution>
+ <execution>
+ <id>jacoco-report</id>
+ <goals>
+ <goal>report-aggregate</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
</executions>
</plugin>
</plugins>
@@ -242,7 +255,7 @@
<jacoco.agent>${jacoco-it.agent}</jacoco.agent>
</systemPropertyVariables>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
-
<forkedProcessTimeoutInSeconds>5400</forkedProcessTimeoutInSeconds>
+ <!--
<forkedProcessTimeoutInSeconds>5400</forkedProcessTimeoutInSeconds> -->
<shutdown>kill</shutdown>
</configuration>
<executions>
@@ -276,13 +289,9 @@
<profile>
<id>apache.ci</id>
<properties>
- <its.forkCount>1</its.forkCount>
+ <its.forkCount>0.4C</its.forkCount>
<its.threadCount>1</its.threadCount>
<surefire.rerunFailingTestsCount>1</surefire.rerunFailingTestsCount>
-
<junit.vintage.execution.parallel.enabled>true</junit.vintage.execution.parallel.enabled>
-
<junit.vintage.execution.parallel.classes>true</junit.vintage.execution.parallel.classes>
-
<junit.vintage.execution.parallel.methods>false</junit.vintage.execution.parallel.methods>
-
<junit.vintage.execution.parallel.pool>5</junit.vintage.execution.parallel.pool>
</properties>
</profile>
<profile>
diff --git a/surefire-logger-api/pom.xml b/surefire-logger-api/pom.xml
index 9d9341454..46cd987d7 100644
--- a/surefire-logger-api/pom.xml
+++ b/surefire-logger-api/pom.xml
@@ -75,22 +75,11 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
- <executions>
- <execution>
- <id>jacoco-agent</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- </executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
</configuration>
<dependencies>
<dependency>
diff --git a/surefire-providers/common-java5/pom.xml
b/surefire-providers/common-java5/pom.xml
index ff40ce21f..6684bf39a 100644
--- a/surefire-providers/common-java5/pom.xml
+++ b/surefire-providers/common-java5/pom.xml
@@ -60,22 +60,11 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
- <executions>
- <execution>
- <id>jacoco-agent</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- </executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
</configuration>
<dependencies>
<dependency>
diff --git a/surefire-providers/surefire-junit-platform/pom.xml
b/surefire-providers/surefire-junit-platform/pom.xml
index 307c7ef88..4ab23894a 100644
--- a/surefire-providers/surefire-junit-platform/pom.xml
+++ b/surefire-providers/surefire-junit-platform/pom.xml
@@ -131,22 +131,11 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
- <executions>
- <execution>
- <id>jacoco-agent</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- </executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
</configuration>
</plugin>
diff --git a/surefire-report-parser/pom.xml b/surefire-report-parser/pom.xml
index 40b033468..aa152d7e8 100644
--- a/surefire-report-parser/pom.xml
+++ b/surefire-report-parser/pom.xml
@@ -68,22 +68,11 @@
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
- <executions>
- <execution>
- <id>jacoco-agent</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- </executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ <argLine>${jvm.args.tests} @{argLine}</argLine>
</configuration>
<dependencies>
<dependency>