X-Git-Url: https://gerrit.nordix.org/gitweb?a=blobdiff_plain;f=jjb%2Fglobal%2Fjjb-macros.yaml;h=7f71596e26a909ee1a8fcb51b981d3db92e495c1;hb=c8dcf1c591156a27f450e52dbfc039c5ab4849aa;hp=3b7c8f7187eac81e0d4a34bb0e446aa85a584d53;hpb=b9f7aec8c5c74574cab4b3b0a27373e75faf3f36;p=infra%2Fcicd.git diff --git a/jjb/global/jjb-macros.yaml b/jjb/global/jjb-macros.yaml index 3b7c8f71..7f71596e 100644 --- a/jjb/global/jjb-macros.yaml +++ b/jjb/global/jjb-macros.yaml @@ -5,11 +5,11 @@ parameters: - string: name: JJB_GIT_REPO - default: https://git.openstack.org/openstack-infra/jenkins-job-builder + default: https://review.opendev.org/jjb/jenkins-job-builder description: OpenStack JJB repo - string: name: JJB_VERSION - default: 2.2.1 + default: 2.9.1 description: OpenStack JJB version to install - matches to LFN JJB version # these parameters are used for setting the Gerrit Project on Nordix @@ -58,6 +58,54 @@ default: ssh://$GERRIT_USER@gerrit.onap.org:29418 description: SSH URL to Project Repo on ONAP Gerrit to clone repo +- parameter: + name: acumos-gerrit-parameters + parameters: + - string: + name: GERRIT_USER + default: nordix + description: Non-interactive user to stream Gerrit Events on Acumos Gerrit + - string: + name: GIT_BASE_HTTPS + default: https://gerrit.acumos.org/r/p + description: HTTPS URL to Project Repo on Acumos Gerrit to clone repo + - string: + name: GIT_BASE_SSH + default: ssh://$GERRIT_USER@gerrit.acumos.org:29418 + description: SSH URL to Project Repo on Acumos Gerrit to clone repo + +- parameter: + name: odl-gerrit-parameters + parameters: + - string: + name: GERRIT_USER + default: nordix + description: Non-interactive user to stream Gerrit Events on ODL Gerrit + - string: + name: GIT_BASE_HTTPS + default: https://git.opendaylight.org/gerrit + description: HTTPS URL to Project Repo on OODL Gerrit to clone repo + - string: + name: GIT_BASE_SSH + default: ssh://$GERRIT_USER@git.opendaylight.org:29418 + description: SSH URL to Project Repo on ODL Gerrit to clone repo + +- parameter: + name: opendev-gerrit-parameters + parameters: + - string: + name: GERRIT_USER + default: nordix + description: Non-interactive user to stream Gerrit Events on OpenDev Gerrit + - string: + name: GIT_BASE_HTTPS + default: https://review.opendev.org + description: HTTPS URL to Project Repo on OpenDev Gerrit to clone repo + - string: + name: GIT_BASE_SSH + default: ssh://$GERRIT_USER@review.opendev.org:29418 + description: SSH URL to Project Repo on OpenDev Gerrit to clone repo + # defaults for job build history - property: name: logrotate-default @@ -68,7 +116,7 @@ artifact-days-to-keep: 60 artifact-num-to-keep: 200 -# defaults for SCM and Gerrit +# defaults for SCM, Gerrit and GitHub - scm: name: git-scm scm: @@ -84,8 +132,11 @@ shallow-clone: false use-author: false ignore-notify: false - wipe-workspace: true + wipe-workspace: '{wipe_workspace}' prune: false + clean: + after: false + before: '{clean_before}' choosing-strategy: 'default' - scm: @@ -103,10 +154,35 @@ shallow-clone: false use-author: false ignore-notify: false - wipe-workspace: true + wipe-workspace: '{wipe_workspace}' prune: false + clean: + after: false + before: '{clean_before}' choosing-strategy: 'gerrit' +- scm: + name: git-scm-github + scm: + - git: + url: 'https://github.com/$PROJECT.git' + branches: + - '*/{branch}' + refspec: '{refspec}' + timeout: 15 + per-build-tag: false + skip-tag: true + shallow-clone: false + use-author: false + ignore-notify: false + wipe-workspace: '{wipe_workspace}' + prune: false + clean: + after: false + before: '{clean_before}' + choosing-strategy: 'default' + basedir: '{base_dir}' + # triggers for Nordix Gerrit - trigger: name: nordix-gerrit-trigger-patchset-created @@ -124,7 +200,7 @@ - comment-added-contains-event: comment-contains-value: 'reverify' projects: - - project-compare-type: 'ANT' + - project-compare-type: 'REG_EXP' project-pattern: '{project}' branches: - branch-compare-type: 'ANT' @@ -157,6 +233,44 @@ - compare-type: 'ANT' pattern: '{files}' +- trigger: + name: nordix-gerrit-push-upstream + triggers: + - gerrit: + server-name: 'Nordix Gerrit' + trigger-on: + - comment-added-contains-event: + comment-contains-value: 'push-upstream' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: 'ANT' + pattern: '{files}' + +- trigger: + name: nordix-gerrit-patchset-created-or-push-upstream + triggers: + - gerrit: + server-name: 'Nordix Gerrit' + trigger-on: + - comment-added-contains-event: + comment-contains-value: 'push-upstream' + - patchset-created-event: + exclude-drafts: true + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: 'ANT' + pattern: '{files}' + # triggers for ONAP Gerrit - trigger: name: onap-gerrit-trigger-change-merged @@ -179,6 +293,72 @@ silent: true silent-start: true +# triggers for Acumos Gerrit +- trigger: + name: acumos-gerrit-trigger-change-merged + triggers: + - gerrit: + server-name: 'Acumos Gerrit' + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: 'remerge' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: 'ANT' + pattern: '{files}' + silent: true + silent-start: true + +# triggers for ODL Gerrit +- trigger: + name: odl-gerrit-trigger-change-merged + triggers: + - gerrit: + server-name: 'ODL Gerrit' + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: 'remerge' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: 'ANT' + pattern: '{files}' + silent: true + silent-start: true + +# triggers for OpenDev Gerrit +- trigger: + name: opendev-gerrit-trigger-change-merged + triggers: + - gerrit: + server-name: 'OpenDev Gerrit' + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: 'remerge' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: 'ANT' + pattern: '{files}' + silent: true + silent-start: true + # wrappers to use for jobs - wrapper: name: nordixinfra-jjb-creds-wrapper @@ -188,3 +368,43 @@ credential-id: nordixinfra-jjb-creds username: JJB_USERNAME password: JJB_USERTOKEN + +# timeout wrapper to use for jobs +- wrapper: + name: build-timeout + wrappers: + - timeout: + timeout: '{timeout}' + timeout-var: 'BUILD_TIMEOUT' + fail: true + +# wrapper to fix jenkins build workspace permissions +- wrapper: + name: fix-workspace-permissions + wrappers: + - pre-scm-buildstep: + failOnError: true + buildsteps: + - shell: | + #!/bin/bash + sudo chown -R $USER:$USER $WORKSPACE || exit 1 + +- publisher: + name: notify-slack + publishers: + - slack: + room: '{slack-channel}' + notify-start: '{notify-start}' + notify-success: '{notify-success}' + notify-failure: '{notify-failure}' + notify-back-to-normal: '{notify-back-to-normal}' + +# property to discard old builds +- property: + name: logrotate + properties: + - build-discarder: + days-to-keep: 30 + num-to-keep: 100 + artifact-days-to-keep: 30 + artifact-num-to-keep: 100