Re: [release] [tsc] Openjdk{8, 11} support for Sodium and Magnesium


Thanh Ha <zxiiro@...>
 

On Thu, 15 Aug 2019 at 10:32, Robert Varga <nite@...> wrote:
On 15/08/2019 15:43, Thanh Ha wrote:
> On Thu, 15 Aug 2019 at 02:22, Robert Varga <nite@...
> <mailto:nite@...>> wrote:
>
>     On 15/08/2019 06:36, Anil Belur wrote:
>     > We have Autorelease (AR) Sodium with two jobs (openjdk8 and openjdk11)
>     > and AR Magnesium with openjdk8. Can we move AR Magnesium to openjdk11
>     > and Sodium to openjdk8?  
>
>     I believe so, but we also need an update to job groups for Mg, as
>     currently -merge jobs are running with JDK8, and that has
>     odlparent/master currently broken -- see
>     https://git.opendaylight.org/gerrit/#/c/releng/builder/+/83422/.
>
>
> This patch won't work because job-groups in JJB do not support defining
> variables (and variables set in job-groups have the highest priority).

Yeah, I meant the URL as a pointer to your explanation :)

> The {disable--job} variable that's mistakenly declared in that job-group
> is getting parsed as a string literal in fact.
>
> The best way forward I think is to duplicate that job-group and create
> one for JDK 11 then projects that want to do JDK 11 can use the new
> job-group.

Hmm... I may be missing something, but wouldn't it suffice if:

1) 'odl-maven-jobs' would *not* define a java-version
2) project definition had a global java-version variable

?

Something like:

- project:
    name: odlparent-master
    jobs:
      - '{project-name}-gerrit-release-jobs'
      - odl-maven-jobs

    java-version: openjdk11
    mvn-settings: odlparent-settings
    mvn-opts: '-Xmx1024m'
    mvn-version: mvn35

- project:
    name: odlparent-5.0.x
    jobs:
      - '{project-name}-gerrit-release-jobs'
      - odl-maven-jobs

    java-version: openjdk8
    mvn-settings: odlparent-settings
    mvn-opts: '-Xmx1024m'
    mvn-version: mvn35


Yes, that would mean we would lose multi-JDK verify jobs -- I know next
to nothing about this, hence maybe we could have a list of java-versions
and everything but -verify jobs would just pick up the first entry?

Am I missing the point entirely? :)

This method would work too _if_ we removed the verify jobs from the job-group. This is because the verify-jobs also use the variable 'java-version' but expects a list instead of a string. In hindsight the verify jobs are not compatible with the rest of the job group due to the conflict in different use cases for the java-version variable. This was fine when we didn't need to override the default java-version variable but now that we do it's clear that this configuration is broken.

Another idea is to change the java-version variable in the verify jobs to [list] verify-java-versions or something to differentiate it from the [string] java-version variable but that would need a global-jjb change.

Regards,
Thanh

Join TSC@lists.opendaylight.org to automatically receive all group messages.