X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Freleng-templates-java.yaml;h=3ee731f1886ea494194ef70077e7b919779a1765;hb=9560033e9f4fb7edb782d040c906b5d4163a62f1;hp=9ae227a7263e4b1b13ae53838eb342b15b6dfaef;hpb=ec8eb5fea0de5f460f1c195f2aa619fe7f6cff60;p=releng%2Fbuilder.git diff --git a/jjb/releng-templates-java.yaml b/jjb/releng-templates-java.yaml index 9ae227a72..3ee731f18 100644 --- a/jjb/releng-templates-java.yaml +++ b/jjb/releng-templates-java.yaml @@ -1,90 +1,176 @@ --- - job-group: - name: odl-maven-jobs + name: odl-maven-jobs-jdk11 jobs: - - gerrit-maven-clm + - gerrit-maven-clm: + nexus-iq-namespace: odl- + nexus-iq-stage: release - gerrit-maven-merge: - post_build_trigger: - - project: - - 'distribution-merge-{stream}' - condition: SUCCESS - trigger-with-no-params: true + build-timeout: 180 + + - gerrit-maven-stage: + sign-artifacts: true + cron: "" + + - gerrit-maven-mri-stage: + sign-artifacts: true + cron: "" + + java-version: openjdk11 + mvn-version: mvn38 + +- job-group: + name: odl-maven-jobs-jdk17 + + jobs: + - gerrit-maven-clm: + nexus-iq-namespace: odl- + nexus-iq-stage: release + + - gerrit-maven-merge: + build-timeout: 180 + + - gerrit-maven-stage: + sign-artifacts: true + cron: "" + + - gerrit-maven-mri-stage: + sign-artifacts: true + cron: "" + + java-version: openjdk17 + mvn-version: mvn38 + +- job-group: + name: odl-maven-verify-jobs - - gerrit-maven-release + jobs: - gerrit-maven-verify - gerrit-maven-verify-dependencies: build-timeout: 180 + mvn-version: mvn38 + +- job-group: + name: odl-maven-verify-jobs-jdk17 + + jobs: + - gerrit-maven-verify + - gerrit-maven-verify-dependencies: + build-timeout: 180 + + mvn-version: mvn38 + java-version: openjdk17 + - job-template: - name: '{project-name}-integration-{stream}' + name: "{project-name}-integration-{stream}" + + ###################### + # Default parameters # + ###################### + + archive-artifacts: > + **/*.log + **/hs_err_*.log + **/target/**/feature.xml + **/target/failsafe-reports/failsafe-summary.xml + **/target/surefire-reports/*-output.txt + mvn-goals: clean install + disable-job: false + + ##################### + # Job Configuration # + ##################### project-type: freestyle - node: '{build-node}' - jdk: '{jdk}' + node: "{build-node}" + jdk: "{java-version}" + disabled: "{disable-job}" properties: - opendaylight-infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - opendaylight-infra-parameters: - os-cloud: '{os-cloud}' - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + os-cloud: "{os-cloud}" + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" scm: - git-scm: - refspec: '' - branch: '{branch}' + refspec: "" + branch: "{branch}" wrappers: - opendaylight-infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: - reverse: - jobs: '{dependencies}' - result: 'success' + jobs: "{dependencies}" + result: "success" builders: - - jacoco-nojava-workaround - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + - lf-jacoco-nojava-workaround + - lf-provide-maven-settings: + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - maven-target: - maven-version: 'mvn33' + maven-version: "mvn35" goals: | - {mvn-goals} - {opendaylight-infra-mvn-opts} + {mvn-goals} + {opendaylight-infra-mvn-opts} java-opts: - - '{mvn-opts}' - settings: '{mvn-settings}' + - "{mvn-opts}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp publishers: - email-notification: - email-recipients: '{email-recipients}' - email-prefix: '{email-upstream}' + email-recipients: "{email-recipients}" + email-prefix: "{email-upstream}" - findbugs - lf-jacoco-report - lf-infra-publish - job-template: - name: '{project-name}-merge-{stream}' + name: "{project-name}-merge-{stream}" + + ###################### + # Default parameters # + ###################### + disable-job: "false" + + archive-artifacts: > + **/*.log + **/hs_err_*.log + **/target/**/feature.xml + **/target/failsafe-reports/failsafe-summary.xml + **/target/surefire-reports/*-output.txt + cron: "@daily" + mvn-opts: "" + mvn-version: mvn35 + java-version: openjdk8 + + ##################### + # Job Configuration # + ##################### # Need to keep jobs that deploy to Nexus at end of build as Maven # projects. Maybe reconsider this once upstream moves deploy to a # separate lifecycle: # https://issues.apache.org/jira/browse/MNG-5666 project-type: maven - node: '{build-node}' - jdk: '{jdk}' + node: "{build-node}" + jdk: "{java-version}" + disabled: "{disable-job}" properties: - opendaylight-infra-properties: @@ -92,92 +178,67 @@ parameters: - opendaylight-infra-parameters: - os-cloud: '{os-cloud}' - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + os-cloud: "{os-cloud}" + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - string: name: STREAM - default: '{stream}' + default: "{stream}" description: "String representing release name" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' + refspec: "" + choosing-strategy: "default" wrappers: - opendaylight-infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: - - timed: 'H H * * 0' + - timed: "{obj:cron}" - gerrit-trigger-patch-merged: - gerrit-server-name: '{gerrit-server-name}' - name: '{project}' - branch: '{branch}' + gerrit-server-name: "{gerrit-server-name}" + name: "{project}" + branch: "{branch}" + files: "**" + forbidden-files: "" prebuilders: - - jacoco-nojava-workaround - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + - lf-jacoco-nojava-workaround + - lf-provide-maven-settings: + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" + - lf-maven-install: + mvn-version: "{mvn-version}" # TODO: Do we want to apply sophisticated checks as in *-distribution-check-*? maven: - maven-name: 'mvn33' + maven-name: "{mvn-version}" goals: > - {mvn-goals} - -Dmerge - -Dstream={stream} - {opendaylight-infra-mvn-opts} - maven-opts: '{mvn-opts}' - settings: '{mvn-settings}' + {mvn-goals} + -Dmerge + -Dstream={stream} + {opendaylight-infra-mvn-opts} + maven-opts: "{mvn-opts}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp post-step-run-condition: UNSTABLE - postbuilders: - - conditional-step: - condition-kind: file-exists - condition-filename: deploy-site.xml - condition-basedir: workspace - - # The strategy here is intentional to run Maven site:deploy twice - # once using regular pom.xml to produce a staged-site which is - # then used by deploy-site.xml to push to Nexus. This is a - # workaround to Maven Site's default linking code which creates - # incorrect URLs for sites due to auto-detection assuming your - # project is configured in a certain way which ODL is not. - steps: - - maven-target: - maven-version: 'mvn33' - pom: pom.xml - goals: 'site:deploy -V -B -Dstream={stream}' - java-opts: - - '-Xmx2g' - settings: '{mvn-settings}' - settings-type: cfp - global-settings: 'global-settings' - global-settings-type: cfp - - opendaylight-infra-deploy-maven-site: - settings-file: '{mvn-settings}' - reporters: - findbugs publishers: - email-notification: - email-recipients: '{email-recipients}' - email-prefix: '[{project-name}]' + email-recipients: "{email-recipients}" + email-prefix: "[{project-name}]" - maven-deploy: - id: '' + id: "" unique-version: true deploy-unstable: false - lf-jacoco-report - lf-infra-publish - - trigger: - project: 'distribution-merge-{stream}' - threshold: SUCCESS