Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deal with Java 11, 17, and 21 for the Jenkins build #3140

Merged
merged 2 commits into from
Aug 10, 2024
Merged

Conversation

LorenzoBettini
Copy link
Contributor

and rely on the toolchain to force compilation and tests with other Java versions.

I left comments to document what I think it's the semantics of those Jenkinsfile parts

Closes #3135

and rely on the toolchain to force compilation and tests with other Java
versions.

I left comments to document what I think it's the semantics of those
Jenkinsfile parts
@LorenzoBettini
Copy link
Contributor Author

@cdietrich let's see whether this fixes the problem for good.

We'll have to manually run a few parameterized Jenkins build.

@cdietrich
Copy link
Member

One the build has started once you should be able to schedule them

@LorenzoBettini
Copy link
Contributor Author

unfortunately JIRO is overloaded, thus also the started build is blocked... I'll check later today.

@LorenzoBettini
Copy link
Contributor Author

On Jenkins, it looks like it's working with 4.23, JDK11. I manually started 4.23, JDK17, and latest, JDK21.

Of course, 4.23, JDK21 is expected not to work due to the test failures due to missing draw2d correct dependency providing the Java record we use in Java 21 tests.

@LorenzoBettini
Copy link
Contributor Author

The failure on macOS is of course flaky, nothing to do with this change.

@LorenzoBettini
Copy link
Contributor Author

It fails when using Java 21 because we're not using the toolchain in that case, so it still uses Java 17, and the profile requires 21 for the source and target of the compiler.

We could always use Java 21 in tools in Jenkinsfile and have a profile/toolchain for Java 17. Does it sound good, @cdietrich?

@cdietrich
Copy link
Member

i think we should then use dedicated toolchain in all cases.
i assume this also will require local config correct?
then we at least should document prominently

And use the toolchain for Java 17 and 11
@LorenzoBettini LorenzoBettini changed the title Always use Java 17 for the build Deal with Java 11, 17, and 21 for the Jenkins build Aug 10, 2024
@LorenzoBettini
Copy link
Contributor Author

@cdietrich I've update the PR.

For Java 21 I'm not using the toolchain: I'd keep the case for the latest version of Java relying on the Java version used for the build.

Now, I'll have to check the 3 combinations as before.

@LorenzoBettini
Copy link
Contributor Author

2 out of 3 are green; let's see latest+Java21 and if it's green I'll merge

@LorenzoBettini LorenzoBettini added this to the Release_2.36 milestone Aug 10, 2024
@LorenzoBettini LorenzoBettini merged commit 2737b36 into main Aug 10, 2024
10 of 11 checks passed
@LorenzoBettini LorenzoBettini deleted the lb_3135 branch August 10, 2024 19:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

There is still something wrong with the build setup
2 participants