-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Enhance build matrix in GitHub Actions #2584
Conversation
Frankly speaking, I am inclined to rename |
ec1ab7f
to
a0c8f22
Compare
Lgtm |
9c8368e
to
db00051
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Really cool!
// Zulu | ||
{group: 'Zulu', version: '8', distribution: 'zulu'}, | ||
{group: 'Zulu', version: '11', distribution: 'zulu'}, | ||
{group: 'Zulu', version: '16', distribution: 'zulu'}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are only supporting the 2 latest LTS (8 + 11 and 11 + 17 soon).
Is it possible to have the other version as optional? We did it with Travis and it helps to have an eye on potential issues without breaking the build.
Is it possible to have EAP version as optional? https://jdk.java.net/17/ It will allow us to anticipate issues without breaking the build.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gradle does not support running with Java 17 yet, so building with Java 17 needs to configure toolchain for the build: https://docs.gradle.org/7.0.2/userguide/toolchains.html
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vlsi - Is there any reference document that you can perhaps link to and create it as a markdown file so that anyone who wants to enhance this stuff but is not familiar with the matrix workings, can refer to and understand ?
Also please help fix the merge conflicts (I guess it got triggered due to the line endings PR that was merged ahead of this)
@krmahadevan , I've published the script as https://github.com/vlsi/github-actions-random-matrix |
Please rebase 🙏 |
@krmahadevan Is this PR ok for you? I think it will help us to find issues. |
@juherr Yes I am fine with this PR. I think there are merge conflicts which need to be fixed. I will explore the tool that @vlsi has shared to understand how it works. |
The matrix selects random values for os, jdk, timezone to keep CI duration reasonable. Note: important combinations (e.g. os=windows, os=linux) are listed explicitly, so PR builds are always verified for cross-platform compatibility.
…rTest#instanceDataProviderTest
intance.toString() is not guaranteed to be unique
"skip".toUpperCase() yields "SKİP" See https://en.wikipedia.org/wiki/Dotted_and_dotless_I
…tances collide on hash codes It fixes test.factory.github2428.IssueTest#issue2438
@juherr , I rebased the PR. |
This PR enables adding new test dimensions while keeping CI duration under control.
Issues identified:
testng
build does not work with OpenJ9 JVM (looks likecom.sun.management.ThreadMXBean
does not exist there)testng
does not work withXX:hashCode=2
test.yaml.YamlTest > testXmlDependencyGroups
sometimes produces a trailing whitespace (windows-related issue?)