I've updated the function to use a tool installation to get the path
instead of hard-coding it. I've also updated it to check if it's
running in log4j (master) or chainsaw (any branch) to choose a
different default jdk. Unfortunately, Jenkins went down for
maintenance around the same time I pushed this update, so we'll have
to check back later to see if this worked. :)

On Tue, 6 Apr 2021 at 09:31, Matt Sicker <boa...@gmail.com> wrote:
>
> Oh right, that could be done various ways. I'll figure something out.
> Maybe the tool DSL works properly now (I think it was buggy when using
> parallel builds).
>
> On Tue, 6 Apr 2021 at 08:53, Apache <ralph.go...@dslextreme.com> wrote:
> >
> > Can we not require a Jenkinsfile in each project that sets properties to 
> > control the behavior?
> >
> > Ralph
> >
> > > On Apr 6, 2021, at 6:45 AM, Matt Sicker <boa...@gmail.com> wrote:
> > >
> > > Oops, good point. I need to make the version selection a little more
> > > sophisticated. Probably a branch or something for the shared lib.
> > >
> > >> On Tue, Apr 6, 2021 at 01:56 Ralph Goers <ralph.go...@dslextreme.com> 
> > >> wrote:
> > >>
> > >> I took care of the failure on verify. I added a clean to log4j-api so it
> > >> will clean every time.
> > >>
> > >> Ralph
> > >>
> > >>> On Apr 5, 2021, at 10:55 PM, Ralph Goers <ralph.go...@dslextreme.com>
> > >> wrote:
> > >>>
> > >>> Matt,
> > >>>
> > >>> A couple of comments
> > >>> This doesn’t seem right. Log4j-audit, Kotlin, and Chainsaw all use the
> > >> mvn command. This will modify them to use Java 11 instead of Java 8. Did 
> > >> we
> > >> really want to do that?
> > >>> The Jenkins build is still failing. The first phase that compiles works
> > >> but the second phase that runs the unit test bails because it tries to
> > >> recompile everything without doing a clean first. That means it will find
> > >> the module-info class when it tries to compile Activator and that will 
> > >> fail
> > >> because org.osgi.core is not in the module-info. It can’t be since OSGi
> > >> isn’t JPMS compatible - which is another reason why the code had to be
> > >> compiled separately from the module-info.java file. I’m really curious -
> > >> why do you run mvn twice and just not skip tests the first time?
> > >>>
> > >>> Ralph
> > >>>
> > >>>> On Apr 5, 2021, at 2:18 PM, mattsic...@apache.org wrote:
> > >>>>
> > >>>> This is an automated email from the ASF dual-hosted git repository.
> > >>>>
> > >>>> mattsicker pushed a commit to branch master
> > >>>> in repository https://gitbox.apache.org/repos/asf/logging-pipelines.git
> > >>>>
> > >>>>
> > >>>> The following commit(s) were added to refs/heads/master by this push:
> > >>>>   new 10333f7  Use Java 11 for master branch
> > >>>> 10333f7 is described below
> > >>>>
> > >>>> commit 10333f76c589fa45e80db878895ad19cfcaba11c
> > >>>> Author: Matt Sicker <boa...@gmail.com>
> > >>>> AuthorDate: Mon Apr 5 16:18:13 2021 -0500
> > >>>>
> > >>>>  Use Java 11 for master branch
> > >>>> ---
> > >>>> vars/mvn.groovy | 10 ++++++----
> > >>>> 1 file changed, 6 insertions(+), 4 deletions(-)
> > >>>>
> > >>>> diff --git a/vars/mvn.groovy b/vars/mvn.groovy
> > >>>> index bf15449..647a15f 100644
> > >>>> --- a/vars/mvn.groovy
> > >>>> +++ b/vars/mvn.groovy
> > >>>> @@ -17,10 +17,11 @@
> > >>>>
> > >>>> def call(String args) {
> > >>>>   if (isUnix()) {
> > >>>> +        String javaHome =
> > >> "/home/jenkins/tools/java/latest${BRANCH_NAME == 'master' ? '11' : 
> > >> '1.8'}"
> > >>>>       configFileProvider([configFile(fileId: 'ubuntu', variable:
> > >> 'TOOLCHAINS')]) {
> > >>>>           withEnv([
> > >>>> -                'JAVA_HOME=/home/jenkins/tools/java/latest1.8',
> > >>>> -
> > >> 'PATH+MAVEN=/home/jenkins/tools/maven/latest3/bin:/home/jenkins/tools/java/latest1.8/bin'
> > >>>> +                "JAVA_HOME=${javaHome}",
> > >>>> +
> > >> "PATH+MAVEN=/home/jenkins/tools/maven/latest3/bin:${javaHome}/bin"
> > >>>>           ]) {
> > >>>>               // note that the jenkins system property is set here to
> > >> activate certain pom properties in
> > >>>>               // some log4j modules that compile against system jars
> > >> (e.g., log4j-jmx-gui)
> > >>>> @@ -28,10 +29,11 @@ def call(String args) {
> > >>>>           }
> > >>>>       }
> > >>>>   } else {
> > >>>> +        String javaHome =
> > >> "f:\\jenkins\\tools\\java\\latest${BRANCH_NAME == 'master' ? '11' : 
> > >> '1.8'}"
> > >>>>       configFileProvider([configFile(fileId: 'windows', variable:
> > >> 'TOOLCHAINS')]) {
> > >>>>           withEnv([
> > >>>> -                'JAVA_HOME=f:\\jenkins\\tools\\java\\latest1.8',
> > >>>> -
> > >> 'PATH+MAVEN=f:\\jenkins\\tools\\maven\\latest3\\bin;f:\\jenkins\\tools\\java\\latest1.8\\bin'
> > >>>> +                "JAVA_HOME=${javaHome}",
> > >>>> +
> > >> "PATH+MAVEN=f:\\jenkins\\tools\\maven\\latest3\\bin;${javaHome}\\bin"
> > >>>>           ]) {
> > >>>>               bat "mvn --toolchains \"%TOOLCHAINS%\" ${args}"
> > >>>>           }
> > >>>>
> > >>>
> > >>
> > >>
> > >>
> >
> >

Reply via email to