jenkinsci / jenkins-test-harness

Unit test framework for Jenkins core and its plugins
https://www.jenkins.io/doc/developer/testing/
MIT License
109 stars 126 forks source link

Revert "Bump org.jenkins-ci:jenkins from 1.122 to 1.123" #847

Closed jglick closed 3 weeks ago

jglick commented 3 weeks ago

Reverts jenkinsci/jenkins-test-harness#844

Currently stumped by a JTH release failure. https://github.com/jenkinsci/jenkins-test-harness/actions/runs/11060243118/job/30730386885 complains about missing org.jenkins-ci.main:jenkins-war:executable-war:2.476. Indeed https://repo.jenkins-ci.org/public/org/jenkins-ci/main/jenkins-war/2.476/ only has jenkins-war-2.476.war but that is by design; https://github.com/jenkinsci/maven-hpi-plugin/pull/65 + https://github.com/jenkinsci/jenkins-test-harness/pull/61 are supposed to look up the *.war and just add it to the Java classpath. https://github.com/jenkinsci/jenkins-test-harness/actions/runs/10966208526/job/30453668284 worked normally just a few days ago (using the same versions of Maven and Java), and the only POM change since then is https://github.com/jenkinsci/jenkins-test-harness/pull/844 which… hmm, https://github.com/jenkinsci/pom/releases/tag/jenkins-1.123 does not mention it but https://github.com/jenkinsci/pom/compare/jenkins-1.122...jenkins-1.123 does show this including https://github.com/jenkinsci/pom/pull/608 with a lot of changes in https://github.com/jenkinsci/maven-hpi-plugin/releases/tag/maven-hpi-plugin-3.58 like https://github.com/jenkinsci/maven-hpi-plugin/pull/649 which might be causing trouble somehow?

I failed to reproduce any problem locally with

docker run -ti --rm --name mvn -u $(id -u):$(id -g) -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven maven:3-eclipse-temurin-17 mvn -Duser.home=/tmp clean compile
jglick commented 3 weeks ago

FWIW a similar error can reproduced from

mvn verify -U -e -ntp

when suppressing the resource which is supposed to make it work:

diff --git pom.xml pom.xml
index 47be48f8c8..a1618e87ae 100644
--- pom.xml
+++ pom.xml
@@ -331,7 +331,6 @@ THE SOFTWARE.
       <plugin>
         <groupId>org.jenkins-ci.tools</groupId>
         <artifactId>maven-hpi-plugin</artifactId>
-        <extensions>true</extensions>
       </plugin>
     </plugins>
   </build>
jglick commented 3 weeks ago

https://github.com/actions/setup-java/releases/tag/v4.4.0 (2 days ago) has a few changes but nothing obviously related (and as noted, the Maven version did not seem to change; see https://github.com/actions/setup-java/issues/685).

jglick commented 3 weeks ago

Aha! Reproduces with

docker run -ti --rm --name mvn -u $(id -u):$(id -g) -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven maven:3.8.8-eclipse-temurin-17 mvn -Duser.home=/tmp clean compile

I will work on bisection.

jglick commented 3 weeks ago

https://github.com/jenkinsci/jenkins-test-harness/releases/tag/2299.v7e8d22e797d3 succeeded. Bisection points to https://github.com/jenkinsci/maven-hpi-plugin/pull/628 as the culprit. I suspect the switch to Java 17 bytecode is responsible, as in https://github.com/jenkinsci/maven-hpi-plugin/issues/667.