X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=jjb%2Fglobal-templates-java.yaml;h=385bd6aa6414a32ceeaae89375c19360ca74cc4d;hb=2fc437dcc40e3f2d8e4836d8f46a71e859614579;hp=e99e43164c0d78df80c90fd903b25c0d28670ee4;hpb=63cd3b86811cb3c9fde3fbc5bd6fcbebd2095bb2;p=ci-management.git diff --git a/jjb/global-templates-java.yaml b/jjb/global-templates-java.yaml index e99e43164..385bd6aa6 100644 --- a/jjb/global-templates-java.yaml +++ b/jjb/global-templates-java.yaml @@ -1,4 +1,64 @@ --- +- job-template: + # Template used for running CLM scans + # Arguements: + # {name} - Project Shortname + # {project} - Fully qualified project name + # {mvn-settings} - Project maven settings file + # {jdk} + name: '{project-name}-{stream}-clm' + + project-type: freestyle + node: '{build-node}' + jdk: '{jdk}' + + properties: + - infra-properties: + build-days-to-keep: 30 + + parameters: + - infra-parameters: + project: '{project}' + branch: '{branch}' + refspec: 'refs/heads/{branch}' + artifacts: '{archive-artifacts}' + + scm: + - git-scm: + refspec: '' + branch: '{branch}' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - timed: 'H H * * 6' + + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + - maven-target: + maven-version: 'mvn33' + pom: 'pom.xml' + goals: | + clean install dependency:tree com.sonatype.clm:clm-maven-plugin:index + {onap-infra-mvn-opts} + java-opts: + - '-Xmx4096m -XX:MaxPermSize=512m' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + - shell: 'find . -regex ".*karaf/target" | xargs rm -rf' + - sonatype-clm: + application-name: '{project-name}' + + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + - job-template: # Job template for Java verify jobs # @@ -15,15 +75,17 @@ node: '{build-node}' properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -31,7 +93,7 @@ choosing-strategy: 'gerrit' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -46,8 +108,9 @@ global-settings-file: 'global-settings' settings-file: '{mvn-settings}' - maven-target: - maven-version: 'mvn33' - goals: 'clean install' + maven-version: '{maven-version}' + goals: 'clean install -DskipTests=true -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' settings: '{mvn-settings}' settings-type: cfp global-settings: 'global-settings' @@ -55,10 +118,9 @@ maven-opts: - maven.test.skip=true -# publishers: -# - ecomp-infra-shiplogs: -# maven-version: 'mvn33' - + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' - job-template: # Job template for Java verify jobs @@ -76,15 +138,17 @@ node: '{build-node}' properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -92,7 +156,7 @@ choosing-strategy: 'gerrit' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -107,16 +171,78 @@ global-settings-file: 'global-settings' settings-file: '{mvn-settings}' - maven-target: - maven-version: 'mvn33' - goals: 'clean install' + maven-version: '{maven-version}' + goals: 'clean install -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' + 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 verify jobs that takes a maven template + # + # The purpose of this job template is to run "maven clean install -P {x}" + # for projects using this template. + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + + name: '{project-name}-{stream}-verify-profile-java' + + project-type: freestyle + concurrent: true + node: '{build-node}' + + 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: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit-trigger-patch-submitted: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '**' + + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + - maven-target: + maven-version: '{maven-version}' + goals: 'clean install -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-type: cfp -# publishers: -# - ecomp-infra-shiplogs: -# maven-version: 'mvn33' + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' - job-template: # Job template for Java verify jobs with POM not at the root @@ -137,15 +263,17 @@ node: '{build-node}' properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -153,7 +281,7 @@ choosing-strategy: 'gerrit' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -168,17 +296,18 @@ global-settings-file: 'global-settings' settings-file: '{mvn-settings}' - maven-target: - maven-version: 'mvn33' + maven-version: '{maven-version}' pom: '{pom}' - goals: 'clean install' + goals: 'clean install -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' settings: '{mvn-settings}' settings-type: cfp global-settings: 'global-settings' global-settings-type: cfp -# publishers: -# - ecomp-infra-shiplogs: -# maven-version: 'mvn33' + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' - job-template: # Job template for Java daily release jobs @@ -194,15 +323,17 @@ node: '{build-node}' maven-deploy-properties: properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -210,7 +341,7 @@ choosing-strategy: 'default' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -227,8 +358,84 @@ settings-file: '{mvn-settings}' - maven-target: - maven-version: 'mvn33' - goals: 'clean deploy sonar:sonar -Dsonar.host.url=https://sonar.openecomp.org' + maven-version: '{maven-version}' + goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -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 + # + # The purpose of this job template is to run "maven version && maven clean + # deploy" for projects using this template. + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + name: '{project-name}-{stream}-release-version-java-daily-no-sonar' + + project-type: freestyle + node: '{build-node}' + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + # 11 AM UTC + - timed: 'H 11 * * *' + - gerrit-trigger-release-manually: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + + - inject: + properties-file: version.properties + - maven-target: + maven-version: '{maven-version}' + goals: 'versions:set versions:update-child-modules versions:commit' + properties: + - 'newVersion=${{release_version}}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + - 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}' settings: '{mvn-settings}' @@ -236,6 +443,10 @@ global-settings: 'global-settings' global-settings-type: cfp + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + - job-template: # Job template for Java daily release jobs # @@ -250,15 +461,17 @@ node: '{build-node}' maven-deploy-properties: properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -266,7 +479,7 @@ choosing-strategy: 'default' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -285,7 +498,7 @@ - inject: properties-file: version.properties - maven-target: - maven-version: 'mvn33' + maven-version: '{maven-version}' goals: 'versions:set versions:update-child-modules versions:commit' properties: - 'newVersion=${{release_version}}' @@ -295,8 +508,9 @@ global-settings-type: cfp - maven-target: - maven-version: 'mvn33' - goals: 'clean deploy sonar:sonar -Dsonar.host.url=https://sonar.openecomp.org' + maven-version: '{maven-version}' + goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' properties: - '{maven-deploy-properties}' settings: '{mvn-settings}' @@ -304,6 +518,10 @@ 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 # @@ -321,15 +539,17 @@ node: '{build-node}' maven-deploy-properties: properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -337,7 +557,7 @@ choosing-strategy: 'default' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -354,9 +574,10 @@ settings-file: '{mvn-settings}' - maven-target: - maven-version: 'mvn33' + maven-version: '{maven-version}' pom: '{pom}' - goals: 'clean deploy sonar:sonar -Dsonar.host.url=https://sonar.openecomp.org' + goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' properties: - '{maven-deploy-properties}' settings: '{mvn-settings}' @@ -364,6 +585,10 @@ global-settings: 'global-settings' global-settings-type: cfp + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + - job-template: # Job template for Java merge jobs # @@ -378,15 +603,17 @@ node: '{build-node}' properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -394,7 +621,7 @@ choosing-strategy: 'default' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -409,18 +636,82 @@ global-settings-file: 'global-settings' settings-file: '{mvn-settings}' - maven-target: - maven-version: 'mvn33' - # yamllint disable rule:line-length - goals: 'clean deploy' - # yamllint enable + maven-version: '{maven-version}' + goals: 'clean deploy -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' + 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 merge jobs that takes a maven template + # + # The purpose of this job template is to run "maven clean deploy -P {x}" + # for projects using this template. + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + name: '{project-name}-{stream}-merge-profile-java' + + project-type: freestyle + node: '{build-node}' + + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit-trigger-patch-merged: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '**' + + builders: + - provide-maven-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}' settings-type: cfp global-settings: 'global-settings' global-settings-type: cfp + properties: + - docker.pull.registry=nexus3.onap.org:10001 + - docker.push.registry=nexus3.onap.org:10003 -# publishers: -# - ecomp-infra-shiplogs: -# maven-version: 'mvn33' + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' - job-template: # Job template for Java merge jobs that should also be triggered by upstream @@ -437,15 +728,17 @@ node: '{build-node}' properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -453,7 +746,7 @@ choosing-strategy: 'default' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -471,18 +764,17 @@ global-settings-file: 'global-settings' settings-file: '{mvn-settings}' - maven-target: - maven-version: 'mvn33' - # yamllint disable rule:line-length - goals: 'clean deploy' - # yamllint enable + maven-version: '{maven-version}' + goals: 'clean deploy -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' settings: '{mvn-settings}' settings-type: cfp global-settings: 'global-settings' global-settings-type: cfp -# publishers: -# - ecomp-infra-shiplogs: -# maven-version: 'mvn33' + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' - job-template: # Job template for Java merge jobs with POM not at the root @@ -502,15 +794,17 @@ node: '{build-node}' properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -518,7 +812,7 @@ choosing-strategy: 'default' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -533,19 +827,18 @@ global-settings-file: 'global-settings' settings-file: '{mvn-settings}' - maven-target: - maven-version: 'mvn33' + maven-version: '{maven-version}' pom: '{pom}' - # yamllint disable rule:line-length - goals: 'clean deploy' - # yamllint enable + goals: 'clean deploy -B + -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' settings: '{mvn-settings}' settings-type: cfp global-settings: 'global-settings' global-settings-type: cfp -# publishers: -# - ecomp-infra-shiplogs: -# maven-version: 'mvn33' + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' - job-template: name: '{project-name}-{stream}-docker-java-daily' @@ -553,15 +846,17 @@ node: 'ubuntu1604-docker-8c-8g' properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -569,7 +864,7 @@ choosing-strategy: 'default' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -589,26 +884,33 @@ - docker-login - maven-docker-push-daily: + 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}' + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + - job-template: name: '{project-name}-{stream}-docker-java-shell-daily' project-type: freestyle node: 'ubuntu1604-docker-8c-8g' properties: - - ecomp-infra-properties: + - infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - - ecomp-infra-parameters: + - infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: '{maven-version}' scm: - gerrit-trigger-scm: @@ -616,7 +918,7 @@ choosing-strategy: 'default' wrappers: - - ecomp-infra-wrappers: + - infra-wrappers: build-timeout: '{build-timeout}' triggers: @@ -635,10 +937,586 @@ - docker-login - - maven-docker-push-daily: - mvn-settings: '{mvn-settings}' - pom: '{docker-pom}' - # use default as mvn-profile if profile is not needed - mvn-profile: '{mvn-profile}' + - maven-target: + maven-version: '{maven-version}' + goals: '{mvn-goals}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp - shell: '{script}' + + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + +- job-template: + name: '{project-name}-{stream}-docker-java-version-shell-daily' + project-type: freestyle + node: 'ubuntu1604-docker-8c-8g' + + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + # 12 AM UTC + - timed: 'H 12 * * *' + - gerrit-trigger-release-manually: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + + builders: + + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + + - inject: + properties-file: version.properties + + - maven-target: + maven-version: '{maven-version}' + goals: 'versions:set versions:update-child-modules versions:commit' + properties: + - 'newVersion=${{release_version}}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + - docker-login + + - maven-target: + maven-version: '{maven-version}' + goals: '{mvn-goals}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + - shell: '{script}' + + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + +- job-template: + name: '{project-name}-{stream}-docker-version-java-daily' + project-type: freestyle + node: 'ubuntu1604-docker-8c-8g' + + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + # 12 AM UTC + - timed: 'H 12 * * *' + - gerrit-trigger-release-manually: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + + builders: + + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + + - inject: + properties-file: version.properties + + - maven-target: + maven-version: '{maven-version}' + goals: 'versions:set versions:update-child-modules versions:commit' + properties: + - 'newVersion=${{release_version}}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + - docker-login + + - maven-docker-push-daily: + 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}' + + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + +- job-template: + name: '{project-name}-{stream}-aai-docker-java-daily' + project-type: freestyle + node: 'ubuntu1604-docker-8c-8g' + + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + # 12 AM UTC + - timed: 'H 12 * * *' + - gerrit-trigger-release-manually: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + + builders: + + - provide-maven-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}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + - maven-target: + maven-version: '{maven-version}' + pom: '{pom}' + goals: '{mvn-goals}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + properties: + - maven.test.skip=true + - docker.pull.registry=nexus3.onap.org:10001 + - docker.push.registry=nexus3.onap.org:10003 + + - shell: !include-raw-escape: include-docker-push.sh + + 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 + # - change version in all POM files to the release version specified + # in version.properties. This is done using a script instread of + # the mvn version plugin that assumes some specific parent structure. + # - runs maven clean deploy sonar + # + # The POM files are required to use the Maven staging plugin so the deploy + # does not deploy directly to the release repo. + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + name: '{project-name}-{stream}-release-version2-java-daily' + + project-type: freestyle + node: '{build-node}' + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + # 11 AM UTC + - timed: 'H 11 * * *' + - gerrit-trigger-release-manually: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + - maven-install: + maven-version: '{maven-version}' + + - inject: + properties-file: version.properties + + - shell: !include-raw-escape: include-update-pom-versions.sh + + - maven-target: + maven-version: '{maven-version}' + goals: 'clean deploy sonar:sonar site:site site:stage-deploy + -Dsonar.host.url=${{SONAR}} -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 + # + # The purpose of this job template is to run + # - change version in all POM files to the release version specified + # in version.properties. This is done using a script instread of + # the mvn version plugin that assumes some specific parent structure. + # - runs maven clean deploy sonar + # + # The POM files are required to use the Maven staging plugin so the deploy + # does not deploy directly to the release repo. + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + # pom: name/location of the pom.xml file relative to the workspace + # pattern: ant file-path pattern relative to the workspace used to + # trigger the job + + name: '{project-name}-{stream}-{subproject}-release-version2-java-daily' + + project-type: freestyle + node: '{build-node}' + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + # 11 AM UTC + - timed: 'H 11 * * *' + - gerrit-trigger-release-manually: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '{pattern}' + + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + - maven-install: + maven-version: '{maven-version}' + + - inject: + properties-file: version.properties + + - shell: !include-raw-escape: include-update-pom-versions.sh + + - maven-target: + maven-version: '{maven-version}' + pom: '{pom}' + goals: 'clean deploy sonar:sonar site:site site:stage-deploy + -Dsonar.host.url=${{SONAR}} -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: + # Template for maven site plugin invocation + # + # It's designed to be triggered when the trigger-job job + # succeeds as there's no need for new documentaiton + # if the build job fails. + # + # Those parameters should be set : + # - site-pom : the pom file that contains the site confiration + # - trigger-job : the name of the project that triggers this job + # upon success. The job name can be + # parameterized. + name: '{project-name}-{stream}-stage-site-java' + project-type: freestyle + node: '{build-node}' + + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - trigger-on-build-success: + job-name: '{trigger-job}' + + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + - inject: + properties-file: version.properties + - maven-target: + maven-version: '{maven-version}' + goals: 'versions:set versions:update-child-modules versions:commit' + properties: + - 'newVersion=${{release_version}}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + - maven-target: + maven-version: '{maven-version}' + pom: '{site-pom}' + goals: 'clean site:site site:stage-deploy' + 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 merge jobs + # + # The purpose of this job template is to run "maven clean deploy" for + # projects using this template. + # + # Required Variables: + # branch: git branch (eg. stable/lithium or master) + name: '{project-name}-{stream}-sdc-merge-java' + + project-type: freestyle + node: 'ubuntu1604-docker-8c-8g' + + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit-trigger-patch-merged: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '**' + + builders: + - provide-maven-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}' + # use default as mvn-profile if profile is not needed + mvn-profile: '{mvn-profile}' + + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' + +- job-template: + name: '{project-name}-{stream}-aai-docker-java-version-daily' + project-type: freestyle + node: 'ubuntu1604-docker-8c-8g' + + 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' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + # 12 AM UTC + - timed: 'H 12 * * *' + - gerrit-trigger-release-manually: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + + builders: + + - provide-maven-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}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + - maven-target: + maven-version: '{maven-version}' + pom: '{pom}' + goals: '{mvn-goals}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + properties: + - maven.test.skip=true + - docker.pull.registry=nexus3.onap.org:10001 + - docker.push.registry=nexus3.onap.org:10003 + + publishers: + - infra-shiplogs: + maven-version: '{maven-version}' +