X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fautorelease%2Fautorelease-templates.yaml;h=58a2336fa964b2c586bb38b684afdc972a294f10;hb=cb52af35b0fa1272dec4181513fd3227b4df9f4c;hp=1e2d67555f2cccd40ebbf40c3ebe28c1ce4e9f8d;hpb=f0853416a3ec7e740db277d55198ad3aa7fde8fd;p=releng%2Fbuilder.git diff --git a/jjb/autorelease/autorelease-templates.yaml b/jjb/autorelease/autorelease-templates.yaml index 1e2d67555..58a2336fa 100644 --- a/jjb/autorelease/autorelease-templates.yaml +++ b/jjb/autorelease/autorelease-templates.yaml @@ -1,17 +1,77 @@ --- # Autorelease build jobs - job-template: - name: 'autorelease-release-{stream}' + name: autorelease-branch-cut + + ##################### + # Job Configuration # + ##################### project-type: freestyle - node: centos7-autorelease-4c-16g - jdk: '{jdk}' - cron: 'H 0 * * *' + node: centos7-builder-2c-2g + + properties: + - opendaylight-infra-properties: + build-days-to-keep: 7 + + parameters: + - lf-infra-parameters: + project: releng/autorelease + branch: master + stream: master + lftools-version: '{lftools-version}' + - string: + name: RELEASE + description: | + Release name to branch cut. + Eg. Lithium, Beryllium, Boron, Carbon... + - bool: + name: DRY_RUN + default: true + description: | + If DRY_RUN is enabled modifications are not published to Gerrit. + + scm: + - lf-infra-gerrit-scm: + git-url: '$GIT_URL/$GERRIT_PROJECT' + branch: master + refspec: 'refs/heads/master' + jenkins-ssh-credential: opendaylight-jenkins-ssh + submodule-recursive: true + choosing-strategy: default - # Default variable values + wrappers: + - lf-infra-wrappers: + build-timeout: 10 + jenkins-ssh-credential: opendaylight-jenkins-ssh + + builders: + - shell: !include-raw-escape: branch-cut.sh + + publishers: + - lf-infra-publish + +- job-template: + name: 'autorelease-release-{stream}' + + ############ + # Defaults # + ############ + + build-node: '{build-node}' + java-version: openjdk8 mvn-version: mvn33 extra-mvn-opts: '' + ##################### + # Job Configuration # + ##################### + + project-type: freestyle + node: '{build-node}' + jdk: '{java-version}' + cron: 'H 0 * * *' + properties: - lf-infra-properties: build-days-to-keep: 30 @@ -145,7 +205,7 @@ - job-template: name: autorelease-update-validate-jobs-{stream} project-type: freestyle - node: centos7-java-builder-2c-4g + node: centos7-builder-2c-1g properties: - lf-infra-properties: @@ -190,8 +250,7 @@ jenkins-ssh-credential: opendaylight-jenkins-ssh builders: - - shell: !include-raw-escape: - - update-validate-autorelease-projects.sh + - autorelease-update-validate-projects - opendaylight-infra-push-gerrit-patch: project: 'releng/builder' gerrit-topic: 'autorelease-update-validate-jobs-{stream}' @@ -204,7 +263,7 @@ - job-template: name: autorelease-version-bump-{stream} project-type: freestyle - node: centos7-autorelease-4c-16g + node: '{build-node}' properties: - opendaylight-infra-properties: @@ -227,7 +286,9 @@ name: DRY_RUN default: true description: | - If DRY_RUN is enabled modifications are not published to Gerrit. + If DRY_RUN is enabled modifications are not published to Gerrit + and artifacts are not pushed to Nexus. Instead the build will be + performed using the goals "clean install". - maven-exec: maven-version: mvn33 @@ -278,7 +339,7 @@ ##################### project-type: freestyle - node: centos7-java-builder-2c-4g + node: centos7-builder-2c-8g properties: - lf-infra-properties: @@ -327,12 +388,24 @@ - job-template: name: '{project-name}-validate-autorelease-{stream}' - disabled: false + ############ + # Defaults # + ############ + + java-version: openjdk8 + + ##################### + # Job Configuration # + ##################### + + disabled: false project-type: freestyle - node: '{build-node}' + # Note: This NEEDS to be hardcoded as projects should NOT be allowed to + # override the build node. + node: centos7-builder-2c-8g concurrent: true - jdk: openjdk8 + jdk: '{java-version}' properties: - lf-infra-properties: @@ -369,7 +442,7 @@ triggers: - gerrit-trigger-patch-submitted: - server: '{server-name}' + gerrit-server-name: '{gerrit-server-name}' project: '{project}' branch: '{branch}' files: '**/*.xml' @@ -377,6 +450,8 @@ builders: - autorelease-checkout-gerrit-patch - jacoco-nojava-workaround + - shell: "./scripts/list-project-dependencies.sh" + - autorelease-determine-merge-order - autorelease-generate-release-patches # In a perfect world projects should be releasing separately and we consume them # via a project that pulls the release bits from each project from Nexus. @@ -397,6 +472,8 @@ settings-type: cfp global-settings: global-settings global-settings-type: cfp + # Hack to workaround the duplicate-finder plugin in odlparent breaking validate-autorelease + - shell: sed -i 's/validate/none/' /tmp/r/org/opendaylight/odlparent/odlparent/3.0.2/odlparent-3.0.2.pom - maven-target: maven-version: mvn33 pom: pom.xml @@ -410,6 +487,9 @@ settings-type: cfp global-settings: global-settings global-settings-type: cfp + - shell: | + mkdir -p archives/ + cp *.log $_ publishers: - email-notification: