jenkins-infra / github-reusable-workflows

Repository for reusable workflows
MIT License
1 stars 6 forks source link

Java 17 update for CD workflow #30

Closed jonesbusy closed 5 months ago

jonesbusy commented 5 months ago

What feature do you want to see added?

Java version used for CD must be updated when controllers require minimum Java 17 version.

https://github.com/jenkins-infra/github-reusable-workflows/blob/main/.github/workflows/maven-cd.yml#L55

Upstream changes

No response

viceice commented 5 months ago

I think this can be easily solved by adding an optional input for the java version?

jonesbusy commented 5 months ago

Looks it was considered already https://github.com/jenkins-infra/github-reusable-workflows/issues/5

Perhaps a version v2 of workflows should be sufficient

lemeurherve commented 5 months ago

Opened https://github.com/jenkins-infra/github-reusable-workflows/pull/31 with a default JAVA_MAJOR_VERSION input set to "11" by default that can easily be set to "17" by plugin maintainers until we switch this default value to "17" when controllers will require JDK17.

This should circumvent the need for a v2.

WDYT?

lemeurherve commented 5 months ago

As suggested by @jglick in https://github.com/jenkins-infra/github-reusable-workflows/issues/31#issuecomment-2098338889, I changed the scope of my pull request to directly update Java to 17:

you should be able to build any plugin using JDK 17. The POM will effectively pass -release 11 to tools. In fact most Jenkinsfiles do not use JDK 11 at all any more (only 17 & 21), and for purposes of the CD release workflow it is even less important to run on the older JDK because the only reason to include JDK 11 in Jenkinsfile would be to run tests on 11 (in case there is some subtle behavioral difference) yet the CD workflow skips all tests.

I'll post that in the original jenkinsci-dev mailing list thread at https://groups.google.com/g/jenkinsci-dev/c/11P2B9s67tw/m/buquLnLeAwAJ for additional reviews and see if there is any objection.