X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Freleng-macros.yaml;h=d56eb57c51dfb14ed27507453be92e8e261a7571;hb=f546b89a336ced325e21acfdd84ff2d7aad4cfd3;hp=f41ad0ca16595d685319135909bcee0139178614;hpb=3b5df05953d14a19fc749585812c4319fae7e8ee;p=releng%2Fbuilder.git diff --git a/jjb/releng-macros.yaml b/jjb/releng-macros.yaml index f41ad0ca1..d56eb57c5 100644 --- a/jjb/releng-macros.yaml +++ b/jjb/releng-macros.yaml @@ -1,5 +1,13 @@ # OLD Releng macros +- parameter: + name: project-parameter + parameters: + - string: + name: PROJECT + default: '{project}' + description: "JJB configured PROJECT parameter to identify an ODL Gerrit project" + - parameter: name: gerrit-parameter parameters: @@ -8,35 +16,93 @@ default: '{branch}' description: "JJB configured GERRIT_BRANCH parameter" +- parameter: + name: gerrit-project-parameter + parameters: + - string: + name: GERRIT_PROJECT + default: '{project}' + description: "GERRIT_PROJECT parameter if not given by trigger" + +- parameter: + name: gerrit-refspec-parameter + parameters: + - string: + name: GERRIT_REFSPEC + default: '{refspec}' + description: "GERRIT_REFSPEC parameter if not given by trigger" + +- parameter: + name: controller-version-parameter + parameters: + - string: + name: ODL_VERSION + default: '{odl_version}' + description: 'Controller version (for use with openstacks networking_odl project)' + +- parameter: + name: patches-to-build-parameter + parameters: + - string: + name: PATCHES_TO_BUILD + default: '' + description: 'csv list of patches in project:changeset format to build distribution with' + +- parameter: + name: distribution-branch-to-build-parameter + parameters: + - string: + name: DISTRIBUTION_BRANCH_TO_BUILD + default: 'master' + description: 'distribution repo branch to build with' + - scm: name: git-scm scm: - git: credentials-id: '{credentials-id}' - url: '{scm-url}' + url: '$GIT_BASE' refspec: '' branches: - 'origin/{branch}' skip-tag: true + wipe-workspace: true - scm: name: gerrit-trigger-scm scm: - git: credentials-id: '{credentials-id}' - url: '{scm-url}' + url: '$GIT_BASE' refspec: '{refspec}' branches: - 'origin/$GERRIT_BRANCH' skip-tag: true - choosing-strategy: gerrit + choosing-strategy: '{choosing-strategy}' + +- wrapper: + name: build-timeout + wrappers: + - timeout: + type: absolute + timeout: 360 + fail: true - trigger: name: gerrit-trigger-patch-submitted triggers: - gerrit: - trigger-on-patchset-uploaded-event: true - trigger-on-draft-published-event: true + server-name: 'OpenDaylight' + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: 'recheck' + - comment-added-contains-event: + comment-contains-value: 'reverify' projects: - project-compare-type: 'ANT' project-pattern: '{name}' @@ -48,7 +114,11 @@ name: gerrit-trigger-patch-merged triggers: - gerrit: - trigger-on-change-merged-event: true + server-name: 'OpenDaylight' + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: 'remerge' projects: - project-compare-type: 'ANT' project-pattern: '{name}' @@ -56,17 +126,114 @@ - branch-compare-type: 'ANT' branch-pattern: '**/{branch}' +- trigger: + name: gerrit-trigger-patch-sonar + triggers: + - gerrit: + server-name: 'OpenDaylight' + trigger-on: + - comment-added-contains-event: + comment-contains-value: 'run-sonar' + projects: + - project-compare-type: 'ANT' + project-pattern: '{name}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/master' + skip-vote: + successful: true + failed: true + unstable: true + notbuilt: true + +- trigger: + name: gerrit-trigger-patch-site-merged + triggers: + - gerrit: + server-name: 'OpenDaylight' + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: 'republish' + projects: + - project-compare-type: 'ANT' + project-pattern: '{name}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + +- publisher: + name: archive-artifacts + publishers: + - archive: + artifacts: '{artifacts}' + allow-empty: true + fingerprint: true + latest-only: true + - publisher: name: email-notification publishers: - email-ext: - recipients: '$DEFAULT_RECIPIENTS' - reply-to: '$DEFAULT_REPLYTO' + recipients: 'jenkins@lists.opendaylight.org' + reply-to: content-type: default - subject: '$DEFAULT_SUBJECT' - body: '$DEFAULT_CONTENT' + subject: '{email-prefix} $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!' + body: | + $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS: + + Check console output at $BUILD_URL to view the results. unstable: true fixed: true send-to: - developers - recipients + +- publisher: + name: jacoco-report + publishers: + - jacoco: + exec-pattern: "**/**.exec" + class-pattern: "**/classes" + source-pattern: "**/src/main/java" + exclusion-pattern: "**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**" + status-update: true + targets: + - branch: + healthy: 10 + unhealthy: 20 + - method: + healthy: 50 + unhealthy: 40 + +- builder: + name: wipe-org-opendaylight-repo + builders: + - shell: 'if [ -d /tmp/r/org/opendaylight ]; then rm -rf /tmp/r/org/opendaylight; fi' + +- builder: + name: jacoco-nojava-workaround + builders: + - shell: 'mkdir -p $WORKSPACE/target/classes $WORKSPACE/jacoco/classes' + +- builder: + name: check-clm + builders: + - sonatype-clm: + application-name: '{application-name}' + +- builder: + name: releng-check-unicode + builders: + - shell: | + $WORKSPACE/scripts/check-unicode.sh jjb/ + +- builder: + name: provide-maven-settings + builders: + - config-file-provider: + files: + - file-id: '{global-settings-file}' + variable: 'GLOBAL_SETTINGS_FILE' + - file-id: '{settings-file}' + variable: 'SETTINGS_FILE'