-
Notifications
You must be signed in to change notification settings - Fork 0
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
[WIP] Fix Jenkins build #69
base: master
Are you sure you want to change the base?
Conversation
4022a6f
to
c511368
Compare
c511368
to
e82ed6d
Compare
* install latest version (8.4 as of this commit) of gradle wrapper before running tests in CI (with comment about how/when to pin to a specific version if need be) * print some debug info about java and gradle in CI test stage * disable gradle build/config caching * [debugging, WIP] try user installed openjdk21 to fix the build
e82ed6d
to
873cba5
Compare
per @rsmith11 (see here), wowza only supports java 11-12. will see if i can pin to an older version of gradle and get the build working with that and java 11. https://www.wowza.com/docs/wowza-streaming-engine-technical-specifications |
…was already done for JAVA_OPTS
A now old (but still viable) suggestion that jcoyne made back when we were on the fall 2023 media work cycle: use Java 21 to do the build, since that seems to work, but try targeting Java 11 as the target for the build's JVM compatibility? We may actually already be doing something like this here, see Lines 35 to 39 in d7c396d
To push this forward, we may want to try setting To try that approach, we should reopen https://github.com/sul-dlss/operations-tasks/issues/3546 |
Why was this change made?
fix the build, include a JAR file that supports upgrading
gradlew
(omitted accidentally in #65).i think the crux of the build fix is the upgraded JVM. in this PR it's a hacky one off installation of OpenJDK 21 in the home dir of the user running the build. in my case on my laptop an old OpenJDK 16 worked. i actually noticed, from the env var printout in the jenkins logs for this PR's successful build,
$JAVA_HOME
got OpenJDK 21, but$PATH
didn't actually get overridden, and the actual java binary in use according tojava -version
was OpenJDK 11. so it seems that the real heart of the fix for the reflection error mentioned in #60 is the use of later supporting java libraries? 🤷 (i didn't seeCLASSPATH
defined in the env vars)How was this change tested?
throw stuff at CI till it goes ✅
Which documentation and/or configurations were updated?
Jenkinsfile
,build.gradle
TODO
build.gradle
: remove the commented outwith
cruft, or back out of the switch todependsOn
. i'm inclined to do the former because: the change was motivated by an error that @aaron-collier and i each ran into on our laptops when building earlier this afternoon. the switch todepenedsOn
fixed it for me, but even if i go back to just usingwith
, i can no longer reproduce the error. still, i can't find any documentation anymore onwith
, but i can fordependsOn
, so i suspect this change would get us off an old approach anyway? 🤷dependsOn
since we can find documentation for that, but not forwith
.Jenkinsfile
but leave the debugging output. addjenv
invocations to switch to JDK 21 if need be (or otherwise update env var overrides as needed if java on jenkins box isn't globally upgraded).--no-build-cache
and--no-configuration-cache
flags?--gradle-version=8.4
, we could also specify--gradle-version=latest
latest
in a timely manner. will leave a comment inJenkinsfile
explaining that a specific version is selectable.