X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=jjb%2Fglobal-templates-java.yaml;h=ff021db1cd52d95fe9ab8e457a8f1266ba4d8d96;hb=refs%2Fheads%2Fmaster;hp=d6104d808ae1b2b68ba915b2c618b7a775cf2d79;hpb=3efde21c737149285529e5c94c6e2ae0b94f6b90;p=ci-management.git diff --git a/jjb/global-templates-java.yaml b/jjb/global-templates-java.yaml index d6104d808..3838aca4d 100644 --- a/jjb/global-templates-java.yaml +++ b/jjb/global-templates-java.yaml @@ -8,72 +8,76 @@ # Required Variables: # branch: git branch (eg. stable/lithium or master) - name: '{project-name}-{stream}-verify-java' + name: "{project-name}-{stream}-verify-java" project-type: freestyle concurrent: true - node: '{build-node}' - build-env-variables: '' - pattern: '**' + node: "{build-node}" + build-env-variables: "" + pattern: "**" pom: - mvn-opts: '' - java-opts: '' + mvn-opts: "" + java-opts: "" + java-version: openjdk8 properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" - maven-params: - mvn-params: '{mvn-params}' + mvn-params: "{mvn-params}" scm: - gerrit-trigger-scm: - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' - submodule-recursive: '{submodule-recursive}' + refspec: "$GERRIT_REFSPEC" + choosing-strategy: "gerrit" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: - gerrit-trigger-patch-submitted: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - files: '{obj:pattern}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" + files: "{obj:pattern}" builders: - lf-infra-pre-build + - lf-update-java-alternatives: + java-version: "{java-version}" - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - inject: properties-content: "{build-env-variables}" - maven-target: - maven-version: '{maven-version}' - pom: '{obj:pom}' - goals: 'clean install -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn {mvn-params}' + maven-version: "{maven-version}" + pom: "{obj:pom}" + # yamllint disable rule:line-length + goals: "clean install -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn {mvn-params}" + # yamlline enable properties: - MAVEN_OPTS='{mvn-opts}' java-opts: - "{java-opts}" - settings: '{mvn-settings}' + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: # Job template for Java verify jobs running checkstyle at the end @@ -89,10 +93,10 @@ # branch: git branch (eg. stable/lithium or master) <<: *verify_java_defaults - name: '{project-name}-{stream}-verify-java-checkstyle' + name: "{project-name}-{stream}-verify-java-checkstyle" + publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - checkstyle-result - job-template: @@ -110,76 +114,25 @@ # trigger the job <<: *verify_java_defaults - name: '{project-name}-{stream}-{subproject}-verify-java' + name: "{project-name}-{stream}-{subproject}-verify-java" - job-template: - # Job template for Java daily release jobs + # Job template for Java integration pairwise jobs # # The purpose of this job template is to run: - # 1. maven clean deploy with Sonar scans + # 1. maven clean install # # Required Variables: # branch: git branch (eg. stable/lithium or master) - name: '{project-name}-{stream}-release-java-daily' - - project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' - maven-deploy-properties: - properties: - - infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - maven-exec: - maven-version: '{maven-version}' - - scm: - - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' - - wrappers: - - infra-wrappers: - build-timeout: '{build-timeout}' - + <<: *verify_java_defaults + name: "{project-name}-{stream}-integration-pairwise" triggers: - # 11 AM UTC - - timed: '@daily' - - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - - builders: - - lf-infra-pre-build - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' - - - maven-target: - maven-version: '{maven-version}' - goals: 'clean deploy -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - properties: - - '{maven-deploy-properties}' - java-opts: - - '-Xmx4096m -XX:MaxPermSize=512m' - settings: '{mvn-settings}' - settings-type: cfp - global-settings: 'global-settings' - global-settings-type: cfp - - publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - gerrit-trigger-patch-submitted: + server: "{server-name}" + project: "{project}" + branch: "{branch}" + files: "{obj:pattern}" - job-template: # Job template for Java daily release jobs running checkstyle at the end @@ -195,65 +148,64 @@ # Required Variables: # branch: git branch (eg. stable/lithium or master) - name: '{project-name}-{stream}-release-java-daily-checkstyle' + name: "{project-name}-{stream}-release-java-daily-checkstyle" project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' + node: "{build-node}" + disabled: false maven-deploy-properties: properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 11 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - conditional-step: condition-kind: regex-match regex: DoSetVersion - label: '{setVersion}' + label: "{setVersion}" steps: - inject: properties-file: version.properties - maven-set-release-version: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' + maven-version: "{maven-version}" + mvn-settings: "{mvn-settings}" pom: - maven-target: - maven-version: '{maven-version}' - goals: 'clean deploy -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - properties: '{obj:mvn_properties}' - settings: '{mvn-settings}' + maven-version: "{maven-version}" + goals: "clean deploy -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn" + properties: "{obj:mvn_properties}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp + publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - checkstyle-result-daily - job-template: @@ -266,300 +218,68 @@ # Required Variables: # branch: git branch (eg. stable/lithium or master) - name: '{project-name}-{stream}-release-version-java-daily' + name: "{project-name}-{stream}-release-version-java-daily" project-type: freestyle - disabled: '{disabled}' - node: '{build-node}' + disabled: false + node: "{build-node}" maven-deploy-properties: properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 11 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - inject: properties-file: version.properties - maven-set-release-version: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' + maven-version: "{maven-version}" + mvn-settings: "{mvn-settings}" pom: - maven-target: - maven-version: '{maven-version}' - goals: 'clean deploy -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' + maven-version: "{maven-version}" + goals: "clean deploy -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn" properties: - - '{maven-deploy-properties}' - settings: '{mvn-settings}' + - "{maven-deploy-properties}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp publishers: - - infra-shiplogs: - maven-version: '{maven-version}' - -- job-template: - # Job template for Java daily release jobs - # - # The purpose of this job template is to run: - # 1. maven set versions - # 2. maven clean deploy -P {mvn-profile} with Sonar scans - # - # Required Variables: - # branch: git branch (eg. stable/lithium or master) - - name: '{project-name}-{stream}-release-version-profile-java-daily' - - project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' - maven-deploy-properties: - properties: - - infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - maven-exec: - maven-version: '{maven-version}' - - scm: - - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' - - wrappers: - - infra-wrappers: - build-timeout: '{build-timeout}' - - triggers: - # 11 AM UTC - - timed: '@daily' - - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - - builders: - - lf-infra-pre-build - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' - - - inject: - properties-file: version.properties - - maven-set-release-version: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' - pom: - - - maven-target: - maven-version: '{maven-version}' - goals: 'clean deploy -P {mvn-profile} -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - properties: - - '{maven-deploy-properties}' - settings: '{mvn-settings}' - settings-type: cfp - global-settings: 'global-settings' - global-settings-type: cfp - - publishers: - - infra-shiplogs: - maven-version: '{maven-version}' - - -- job-template: - # Job template for Java daily release jobs with POM not at the root - # - # The purpose of this job template is to run: - # 1. maven clean deploy with Sonar scans - # - # This job supports subprojects. - # - # Required Variables: - # branch: git branch (eg. stable/lithium or master) - # pom: name/location of the pom.xml file relative to the workspace - - name: '{project-name}-{stream}-{subproject}-release-java-daily' - - project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' - maven-deploy-properties: - properties: - - infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - maven-exec: - maven-version: '{maven-version}' - - scm: - - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' - - wrappers: - - infra-wrappers: - build-timeout: '{build-timeout}' - - triggers: - # 11 AM UTC - - timed: '@daily' - - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - - builders: - - lf-infra-pre-build - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' - - - maven-target: - maven-version: '{maven-version}' - pom: '{pom}' - goals: 'clean deploy -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - properties: - - '{maven-deploy-properties}' - java-opts: - - '-Xmx4096m -XX:MaxPermSize=512m' - settings: '{mvn-settings}' - settings-type: cfp - global-settings: 'global-settings' - global-settings-type: cfp - - publishers: - - infra-shiplogs: - maven-version: '{maven-version}' - -- job-template: - # Job template for Java daily release jobs with POM not at the root - # - # The purpose of this job template is to run: - # 1. maven set versions - # 2. maven clean deploy with Sonar scans - # - # This job supports subprojects. - # - # Required Variables: - # branch: git branch (eg. stable/lithium or master) - # pom: name/location of the pom.xml file relative to the workspace - - name: '{project-name}-{stream}-{subproject}-release-version-java-daily' - - project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' - version-properties: 'version.properties' - maven-deploy-properties: - properties: - - infra-properties: - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - maven-exec: - maven-version: '{maven-version}' - - scm: - - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' - - wrappers: - - infra-wrappers: - build-timeout: '{build-timeout}' - - triggers: - # 11 AM UTC - - timed: '@daily' - - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - - builders: - - lf-infra-pre-build - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' - - - inject: - properties-file: '{version-properties}' - - maven-set-release-version: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' - pom: '{pom}' - - - maven-target: - maven-version: '{maven-version}' - pom: '{pom}' - goals: 'clean deploy -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - properties: - - '{maven-deploy-properties}' - settings: '{mvn-settings}' - settings-type: cfp - global-settings: 'global-settings' - global-settings-type: cfp - - publishers: - - infra-shiplogs: - maven-version: '{maven-version}' - + - lf-infra-publish - job-template: &merge_java_defaults # Job template for Java merge jobs @@ -570,73 +290,77 @@ # Required Variables: # branch: git branch (eg. stable/lithium or master) - name: '{project-name}-{stream}-merge-java' + name: "{project-name}-{stream}-merge-java" project-type: freestyle - node: '{build-node}' - pattern: '**' + node: "{build-node}" + pattern: "**" pom: mvn_properties: [] - mvn-params: '' - mvn-opts: '' - java-opts: '' + mvn-params: "" + mvn-opts: "" + java-opts: "" + java-version: openjdk8 properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - - infra-wrappers: - build-timeout: '{build-timeout}' + - lf-infra-wrappers: + build-timeout: "{build-timeout}" + jenkins-ssh-credential: "{jenkins-ssh-credential}" triggers: - gerrit-trigger-patch-merged: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - files: '{pattern}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" + files: "{pattern}" builders: - lf-infra-pre-build - - lf-infra-docker-login: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + - lf-update-java-alternatives: + java-version: "{java-version}" - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" + - conditional-step: + condition-kind: regex-match + regex: .*(amd64|arm64).* + label: "{project-name}" + steps: + - shell: !include-raw-escape: global-jjb/shell/docker-login.sh - maven-target: - maven-version: '{maven-version}' - pom: '{obj:pom}' - goals: 'clean deploy -B {mvn-params} - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - properties: - - MAVEN_OPTS='{mvn-opts}' + maven-version: "{maven-version}" + pom: "{obj:pom}" + goals: "clean deploy -B {mvn-params} + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn" java-opts: - "{java-opts}" - settings: '{mvn-settings}' + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp - properties: '{obj:mvn_properties}' + properties: "{obj:mvn_properties}" publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: # Job template for Java merge jobs based on @@ -651,7 +375,12 @@ # maven-properties: properties passed to maven <<: *merge_java_defaults - name: '{project-name}-{stream}-merge-properties-java' + name: "{project-name}-{stream}-merge-properties-java" + + wrappers: + - lf-infra-wrappers: + build-timeout: "{build-timeout}" + jenkins-ssh-credential: "{jenkins-ssh-credential}" - job-template: # Job template for Java merge jobs that takes a maven template @@ -663,23 +392,23 @@ # branch: git branch (eg. stable/lithium or master) <<: *merge_java_defaults - name: '{project-name}-{stream}-merge-profile-java' + name: "{project-name}-{stream}-merge-profile-java" builders: - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - docker-login - maven-target: - maven-version: '{maven-version}' - goals: 'clean deploy -P {mvn-profile} -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - settings: '{mvn-settings}' + maven-version: "{maven-version}" + goals: "clean deploy -P {mvn-profile} -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp properties: - docker.pull.registry=nexus3.onap.org:10001 @@ -700,7 +429,7 @@ # trigger the job <<: *merge_java_defaults - name: '{project-name}-{stream}-{subproject}-merge-java' + name: "{project-name}-{stream}-{subproject}-merge-java" - job-template: &docker_java_defaults # Job template for Docker daily jobs @@ -712,63 +441,65 @@ # Required Variables: # branch: git branch (eg. stable/lithium or master) - name: '{project-name}-{stream}-docker-java-daily' - id: '{project-name}-{stream}-docker-java-daily' + name: "{project-name}-{stream}-docker-java-daily" + id: "{project-name}-{stream}-docker-java-daily" project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' + node: "{build-node}" + disabled: false + java-version: openjdk8 properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" - maven-params: - mvn-params: '{mvn-params}' + mvn-params: "{mvn-params}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 12 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build + - lf-update-java-alternatives: + java-version: "{java-version}" + - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - docker-login - maven-docker-push-daily: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' - pom: '{docker-pom}' + maven-version: "{maven-version}" + mvn-settings: "{mvn-settings}" + pom: "{docker-pom}" # use default as mvn-profile if profile is not needed - mvn-profile: '{mvn-profile}' - mvn-params: '{mvn-params}' + mvn-profile: "{mvn-profile}" + mvn-params: "{mvn-params}" publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: # Job template for Docker daily jobs @@ -781,88 +512,12 @@ # branch: git branch (eg. stable/lithium or master) <<: *docker_java_defaults - name: '{project-name}-{stream}-docker-java-daily' + name: "{project-name}-{stream}-docker-java-daily" id: docker-java-daily - node: '{build-node}' + node: "{build-node}" wrappers: - infra-wrappers-docker-build: - build-timeout: '{build-timeout}' - -- job-template: - # Job template for building & pushing docker images - # - # The purpose of this job template is to run: - # 1. login to the docker registry - # 2. maven clean deploy on the specified profile - # - # This job uses a conditional regex match step to set versions. - # This template supports maven properties. - # - # Required Variables: - # pom: name/location of the pom.xml file relative to the workspace - # profile: the docker profile defined in the pom - # maven-properties: properties passed to maven - - name: '{project-name}-{stream}-docker-java-properties-daily' - project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' - properties: - - infra-properties: - build-days-to-keep: '{build-days-to-keep}' - parameters: - - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - maven-exec: - maven-version: '{maven-version}' - - maven-params: - mvn-params: '{mvn-params}' - scm: - - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' - wrappers: - - infra-wrappers: - build-timeout: '{build-timeout}' - triggers: - # 12 AM UTC - - timed: '@daily' - - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - builders: - - lf-infra-pre-build - - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' - - conditional-step: - condition-kind: regex-match - regex: DoSetVersion - label: '{setVersion}' - steps: - - inject: - properties-file: version.properties - - maven-set-release-version: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' - pom: - - docker-login - - maven-docker-push-daily: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' - pom: '{docker-pom}' - properties: '{maven-properties}' - # use default as mvn-profile if profile is not needed - mvn-profile: '{mvn-profile}' - mvn-params: '{mvn-params}' - publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + build-timeout: "{build-timeout}" - job-template: # Job template for building & pushing docker images @@ -875,62 +530,60 @@ # pom: name/location of the pom.xml file relative to the workspace # maven-properties: properties passed to maven - name: '{project-name}-{stream}-docker-java-shell-daily' + name: "{project-name}-{stream}-docker-java-shell-daily" project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' + node: "{build-node}" + disabled: false properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 12 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - docker-login - maven-target: - maven-version: '{maven-version}' - goals: '{mvn-goals}' - settings: '{mvn-settings}' + maven-version: "{maven-version}" + goals: "{mvn-goals}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp - - shell: '{script}' + - shell: "{script}" publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: # Job template for building & pushing docker images @@ -943,63 +596,61 @@ # pom: name/location of the pom.xml file relative to the workspace # maven-properties: properties passed to maven - name: '{project-name}-{stream}-{subproject}-docker-java-shell-daily' + name: "{project-name}-{stream}-{subproject}-docker-java-shell-daily" project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' + node: "{build-node}" + disabled: false properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 12 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - docker-login - maven-target: - maven-version: '{maven-version}' - pom: '{pom}' - goals: '{mvn-goals}' - settings: '{mvn-settings}' + maven-version: "{maven-version}" + pom: "{pom}" + goals: "{mvn-goals}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp - - shell: '{script}' + - shell: "{script}" publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: # Job template for building & pushing docker images @@ -1013,69 +664,67 @@ # pom: name/location of the pom.xml file relative to the workspace # maven-properties: properties passed to maven - name: '{project-name}-{stream}-docker-java-version-shell-daily' + name: "{project-name}-{stream}-docker-java-version-shell-daily" project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' + node: "{build-node}" + disabled: false properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 12 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - inject: properties-file: version.properties - maven-set-release-version: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' + maven-version: "{maven-version}" + mvn-settings: "{mvn-settings}" pom: - docker-login - maven-target: - maven-version: '{maven-version}' - goals: '{mvn-goals}' - settings: '{mvn-settings}' + maven-version: "{maven-version}" + goals: "{mvn-goals}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp - - shell: '{script}' + - shell: "{script}" publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: # Job template for building & pushing docker images @@ -1091,70 +740,68 @@ # pom: name/location of the pom.xml file relative to the workspace # maven-properties: properties passed to maven - name: '{project-name}-{stream}-{subproject}-docker-java-version-shell-daily' + name: "{project-name}-{stream}-{subproject}-docker-java-version-shell-daily" project-type: freestyle - node: 'ubuntu1604-docker-8c-8g' - disabled: '{disabled}' + node: "ubuntu1804-docker-8c-8g" + disabled: false properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 12 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - inject: properties-file: version.properties - maven-set-release-version: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' - pom: '{pom}' + maven-version: "{maven-version}" + mvn-settings: "{mvn-settings}" + pom: "{pom}" - docker-login - maven-target: - maven-version: '{maven-version}' - pom: '{pom}' - goals: '{mvn-goals}' - settings: '{mvn-settings}' + maven-version: "{maven-version}" + pom: "{pom}" + goals: "{mvn-goals}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp - - shell: '{script}' + - shell: "{script}" publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: &docker_version_java_defaults # Job template for building & pushing docker images @@ -1169,70 +816,68 @@ # profile: the docker profile defined in the pom # maven-properties: properties passed to maven - name: '{project-name}-{stream}-docker-version-java-daily' - id: '{project-name}-{stream}-docker-version-java-daily' + name: "{project-name}-{stream}-docker-version-java-daily" + id: "{project-name}-{stream}-docker-version-java-daily" project-type: freestyle - node: '{build-node}' - disabled: '{disabled}' + node: "{build-node}" + disabled: false properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" - maven-params: - mvn-params: '{mvn-params}' + mvn-params: "{mvn-params}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 12 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - inject: properties-file: version.properties - maven-set-release-version: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' + maven-version: "{maven-version}" + mvn-settings: "{mvn-settings}" pom: - docker-login - maven-docker-push-daily: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' - pom: '{docker-pom}' + maven-version: "{maven-version}" + mvn-settings: "{mvn-settings}" + pom: "{docker-pom}" # use default as mvn-profile if profile is not needed - mvn-profile: '{mvn-profile}' - mvn-params: '{mvn-params}' + mvn-profile: "{mvn-profile}" + mvn-params: "{mvn-params}" publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: # Job template for building & pushing docker images @@ -1248,12 +893,12 @@ # maven-properties: properties passed to maven <<: *docker_version_java_defaults - name: '{project-name}-{stream}-docker-version-java-daily' - id: 'docker-version-java-daily' - node: '{build-node}' + name: "{project-name}-{stream}-docker-version-java-daily" + id: "docker-version-java-daily" + node: "{build-node}" wrappers: - infra-wrappers-docker-build: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" - job-template: # Job template for building & pushing docker images for AAI specific repos @@ -1267,69 +912,71 @@ # pom: name/location of the pom.xml file relative to the workspace # maven-properties: properties passed to maven - name: '{project-name}-{stream}-aai-docker-java-daily' + name: "{project-name}-{stream}-aai-docker-java-daily" project-type: freestyle - node: '{build-node}' - docker-image-name: '' - disabled: '{disabled}' + node: "{build-node}" + docker-image-name: "" + disabled: false + java-version: "openjdk8" properties: - infra-properties: - build-days-to-keep: '{build-days-to-keep}' + build-days-to-keep: "{build-days-to-keep}" parameters: - infra-parameters: - project: '{project}' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' + project: "{project}" + branch: "{branch}" + refspec: "refs/heads/{branch}" + artifacts: "{archive-artifacts}" - maven-exec: - maven-version: '{maven-version}' + maven-version: "{maven-version}" - docker-image-name: - docker-image-name: '{docker-image-name}' + docker-image-name: "{docker-image-name}" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: # 12 AM UTC - - timed: '@daily' - gerrit-trigger-release-manually: - server: '{server-name}' - project: '{project}' - branch: '{branch}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" builders: - lf-infra-pre-build + - lf-update-java-alternatives: + java-version: "{java-version}" - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - docker-login - maven-target: - maven-version: '{maven-version}' - pom: 'pom.xml' - goals: 'clean install -DskipTests -B - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' - settings: '{mvn-settings}' + maven-version: "{maven-version}" + pom: "pom.xml" + goals: "clean install -DskipTests -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp - maven-target: - maven-version: '{maven-version}' - pom: '{pom}' - goals: '{mvn-goals}' - settings: '{mvn-settings}' + maven-version: "{maven-version}" + pom: "{pom}" + goals: "{mvn-goals}" + settings: "{mvn-settings}" settings-type: cfp - global-settings: 'global-settings' + global-settings: "global-settings" global-settings-type: cfp properties: - maven.test.skip=true @@ -1339,8 +986,7 @@ - shell: !include-raw-escape: include-docker-push.sh publishers: - - infra-shiplogs: - maven-version: '{maven-version}' + - lf-infra-publish - job-template: # Job template for Java merge jobs for SDC specific repos @@ -1352,26 +998,28 @@ # branch: git branch (eg. stable/lithium or master) <<: *merge_java_defaults - name: '{project-name}-{stream}-sdc-merge-java' + name: "{project-name}-{stream}-sdc-merge-java" - node: '{build-node}' + node: "{build-node}" build-timeout: 120 builders: - lf-infra-pre-build + - lf-update-java-alternatives: + java-version: "{java-version}" - provide-maven-settings: - global-settings-file: 'global-settings' - settings-file: '{mvn-settings}' + global-settings-file: "global-settings" + settings-file: "{mvn-settings}" - docker-login - maven-docker-push-daily: - maven-version: '{maven-version}' - mvn-settings: '{mvn-settings}' - pom: '{docker-pom}' + maven-version: "{maven-version}" + mvn-settings: "{mvn-settings}" + pom: "{docker-pom}" # use default as mvn-profile if profile is not needed - mvn-profile: '{mvn-profile}' - mvn-params: '' + mvn-profile: "{mvn-profile}" + mvn-params: "" - job-template: # Job template for Java merge jobs on multiple architectures @@ -1381,69 +1029,69 @@ # 2. Build and push a docker manifest list for the images created by # the previous jobs - name: '{project-name}-multiarch-{stream}-merge-java' - node: '{build-node}' + name: "{project-name}-multiarch-{stream}-merge-java" + node: "{build-node}" project-type: multijob - disabled: '{obj:disabled}' - pattern: '**' + disabled: "{obj:disabled}" + pattern: "**" parameters: - lf-infra-parameters: - project: '{project}' - stream: '{stream}' - branch: '{branch}' + project: "{project}" + stream: "{stream}" + branch: "{branch}" - string: name: DOCKER_REGISTRY - default: 'none' + default: "none" - string: name: DOCKERHUB_REGISTRY - default: 'registry-1.docker.io' + default: "registry-1.docker.io" properties: - throttle: max-per-node: 1 - option: 'project' + option: "project" - build-blocker: use-build-blocker: true blocking-jobs: - - '{project-name}-.*-merge-.*' - blocking-level: 'NODE' + - "{project-name}-.*-merge-.*" + blocking-level: "NODE" scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' + refspec: "" + choosing-strategy: "default" + submodule-recursive: "{submodule-recursive}" wrappers: - infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: "{build-timeout}" triggers: - gerrit-trigger-patch-merged: - server: '{server-name}' - project: '{project}' - branch: '{branch}' - files: '{pattern}' + server: "{server-name}" + project: "{project}" + branch: "{branch}" + files: "{pattern}" builders: - multijob: - name: 'build docker images' + name: "build docker images" condition: ALWAYS execution-type: PARALLEL projects: - - name: '{project-name}-amd64-{stream}-merge-java' + - name: "{project-name}-amd64-{stream}-merge-java" kill-phase-on: FAILURE current-parameters: true - - name: '{project-name}-arm64-{stream}-merge-java' + - name: "{project-name}-arm64-{stream}-merge-java" kill-phase-on: NEVER current-parameters: true - multijob: - name: 'publish docker manifest' + name: "publish docker manifest" condition: SUCCESSFUL execution-type: PARALLEL projects: - - name: '{project-name}-docker-manifest-{stream}' + - name: "{project-name}-docker-manifest-{stream}" current-parameters: true predefined-parameters: | PARENT_JOB_NAME=$JOB_NAME