X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=jjb%2Fhoneycomb%2Fhoneycomb.yaml;h=2348f725c05d484ef59299a4aa1c152532acddb3;hb=21316a6aa857071e89e4d512613a785eddac2ae5;hp=f8464b4ca7bcbc5e07cad5731c32428fede6bc66;hpb=2aef4871acd774532163ebe2a485bdb323c08ada;p=ci-management.git diff --git a/jjb/honeycomb/honeycomb.yaml b/jjb/honeycomb/honeycomb.yaml index f8464b4ca..2348f725c 100644 --- a/jjb/honeycomb/honeycomb.yaml +++ b/jjb/honeycomb/honeycomb.yaml @@ -1,15 +1,30 @@ - project: name: honeycomb jobs: - - 'honeycomb-verify' - - 'honeycomb-merge' + - 'honeycomb-verify-{stream}-{os}' + - 'honeycomb-merge-{stream}-{os}' + - 'honeycomb-integration-{stream}-{os}' + - 'honeycomb-verify-image-{stream}-{os}' project: 'honeycomb' - branch: 'master' + os: + - ubuntu1404: + repo-os-part: 'ubuntu.trusty.main' + skip-site: 'false' + - centos7: + repo-os-part: 'centos7' + skip-site: 'true' + stream: + - master: + branch: 'master' + repo-stream-part: 'master' + - '1609': + branch: 'stable/1609' + repo-stream-part: 'stable.1609' - job-template: - name: 'honeycomb-verify' + name: 'honeycomb-verify-{stream}-{os}' project-type: maven - node: verify + node: verify-{os} concurrent: true logrotate: @@ -23,41 +38,111 @@ project: '{project}' - gerrit-parameter: branch: '{branch}' + - os-parameter: + os: '{os}' scm: - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' + credentials-id: 'jenkins-gerrit-credentials' refspec: '$GERRIT_REFSPEC' choosing-strategy: 'gerrit' wrappers: - - build-timeout - - ssh-agent-credentials: - users: - - '{ssh-credentials}' + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' triggers: - gerrit-trigger-patch-submitted: name: 'honeycomb' branch: '{branch}' + prebuilders: + - shell: | + if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi maven: - maven-name: '{mvn33}' + maven-name: 'mvn33' + root-pom: 'pom.xml' + goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dkaraf.keep.unpack=true site' + maven-opts: '-Xmx2048m -Dmaven.compile.fork=true' + settings: 'honeycomb-settings' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + publishers: + - email-notification: + email-prefix: '[honeycomb]' + +- job-template: + name: 'honeycomb-verify-image-{stream}-{os}' + project-type: maven + node: 'verify-image-{os}' + concurrent: true + + logrotate: + daysToKeep: '{build-days-to-keep}' + numToKeep: '{build-num-to-keep}' + artifactDaysToKeep: '{build-artifact-days-to-keep}' + artifactNumToKeep: '{build-artifact-num-to-keep}' + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - os-parameter: + os: '{os}' + + scm: + - gerrit-trigger-scm: + credentials-id: 'jenkins-gerrit-credentials' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit: + server-name: 'Primary' + trigger-on: + - comment-added-contains-event: + comment-contains-value: 'verify-images' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + skip-vote: + successful: true + failed: true + unstable: true + notbuilt: true + + prebuilders: + - shell: | + if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi + maven: + maven-name: 'mvn33' root-pom: 'pom.xml' goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dkaraf.keep.unpack=true' - maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' - settings: '{honeycomb-settings}' - global-settings: '{global-settings}' + maven-opts: '-Xmx2048m -Dmaven.compile.fork=true' + settings: 'honeycomb-settings' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp publishers: - email-notification: email-prefix: '[honeycomb]' - job-template: - name: 'honeycomb-merge' + name: 'honeycomb-merge-{stream}-{os}' project-type: maven - node: merge - jdk: '{jdk}' + node: merge-{os} + jdk: openjdk8-{os} logrotate: daysToKeep: '{build-days-to-keep}' @@ -68,18 +153,25 @@ parameters: - project-parameter: project: '{project}' + - os-parameter: + os: '{os}' + - maven-project-parameter: + maven: 'mvn33' + - repo-name-parameter: + repo-name: '{repo-stream-part}.{repo-os-part}' scm: - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' + credentials-id: 'jenkins-gerrit-credentials' refspec: '' choosing-strategy: 'default' wrappers: - - build-timeout - ssh-agent-credentials: users: - - '{ssh-credentials}' + - 'jenkins-gerrit-credentials' + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' triggers: - gerrit-trigger-patch-merged: @@ -87,13 +179,94 @@ branch: '{branch}' maven: - maven-name: '{mvn33}' + maven-name: 'mvn33' + root-pom: 'pom.xml' + goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dkaraf.keep.unpack=true -Dsonar -Dmaven.site.skip={skip-site} site -Dmaven.site.deploy.skip={skip-site} site:deploy' + maven-opts: '-Xmx2048m -Dmaven.compile.fork=true' + settings: 'honeycomb-settings' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + + reporters: + - findbugs + + publishers: + - sonar: + jdk: 'openjdk8-{os}' + language: 'java' + branch: '{stream}' + - email-notification: + email-prefix: '[honeycomb]' + +- job-template: + name: 'honeycomb-integration-{stream}-{os}' + project-type: maven + node: merge-{os} + + logrotate: + daysToKeep: '{build-days-to-keep}' + numToKeep: '{build-num-to-keep}' + artifactDaysToKeep: '{build-artifact-days-to-keep}' + artifactNumToKeep: '{build-artifact-num-to-keep}' + + parameters: + - project-parameter: + project: '{project}' + - os-parameter: + os: '{os}' + - maven-project-parameter: + maven: 'mvn33' + - repo-name-parameter: + repo-name: '{repo-stream-part}.{repo-os-part}' + + scm: + - git-scm: + credentials-id: 'jenkins-gerrit-credentials' + refspec: '' + branch: '{branch}' + + wrappers: + - ssh-agent-credentials: + users: + - 'jenkins-gerrit-credentials' + - fdio-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - reverse: + jobs: 'vpp-merge-{stream}-{os},honeycomb-merge-{stream}-{os}' + result: 'success' + + prebuilders: + - shell: | + if [ "${{OS}}" == "ubuntu1404" ];then sudo update-java-alternatives -s /usr/lib/jvm/java-1.8.0-openjdk-amd64||echo 'ignoring failure';fi + + maven: + maven-name: 'mvn33' root-pom: 'pom.xml' goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dkaraf.keep.unpack=true' - maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' - settings: '{honeycomb-settings}' - global-settings: '{global-settings}' + maven-opts: '-Xmx2048m -Dmaven.compile.fork=true' + settings: 'honeycomb-settings' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + postbuilders: + - maven-target: + maven-version: 'mvn33' + goals: '--version' + settings: 'honeycomb-settings' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + - provide-maven-settings: + settings-file: 'honeycomb-settings' + global-settings-file: 'global-settings' + - shell: + !include-raw-escape: + - ../scripts/maven_push_functions.sh + - include-raw-honeycomb-pkg-push.sh reporters: - findbugs @@ -104,4 +277,3 @@ id: '' unique-version: true deploy-unstable: false -