X-Git-Url: https://gerrit.nordix.org/gitweb?a=blobdiff_plain;f=jjb%2Fglobal%2Fjjb-macros.yaml;h=c1c6abea06f14e8cfa3b0b3663c5a46360e8d26b;hb=HEAD;hp=204ef5c05a6e79c2892801df6d7427ec4150a1a2;hpb=c5cd28c0499dda8e256edf802532ba7ae72cb6f5;p=infra%2Fcicd.git diff --git a/jjb/global/jjb-macros.yaml b/jjb/global/jjb-macros.yaml index 204ef5c05..c1c6abea0 100644 --- a/jjb/global/jjb-macros.yaml +++ b/jjb/global/jjb-macros.yaml @@ -1,17 +1,4 @@ --- -# these parameters are used for infra related variables -- parameter: - name: infra-parameters - parameters: - - string: - name: JJB_GIT_REPO - default: https://git.openstack.org/openstack-infra/jenkins-job-builder - description: OpenStack JJB repo - - string: - name: JJB_VERSION - 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 - parameter: name: project-parameters @@ -90,6 +77,67 @@ 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 + +- parameter: + name: oransc-gerrit-parameters + parameters: + - string: + name: GERRIT_USER + default: nordix + description: Non-interactive user to stream Gerrit Events on ORAN-SC Gerrit + - string: + name: GIT_BASE_HTTPS + default: https://gerrit.o-ran-sc.org/r + description: HTTPS URL to Project Repo on ORAN-SC Gerrit to clone repo + - string: + name: GIT_BASE_SSH + default: ssh://$GERRIT_USER@gerrit.o-ran-sc.org:29418 + description: SSH URL to Project Repo on ORAN-SC Gerrit to clone repo + +- parameter: + name: fdio-gerrit-parameters + parameters: + - string: + name: GERRIT_USER + default: nordix + description: Non-interactive user to stream Gerrit Events on Fast Data Project Gerrit + - string: + name: GIT_BASE_HTTPS + default: https://gerrit.fd.io/r + description: HTTPS URL to Project Repo on Fast Data Project Gerrit to clone repo + - string: + name: GIT_BASE_SSH + default: ssh://$GERRIT_USER@gerrit.fd.io:29418 + description: SSH URL to Project Repo on Fast Data Project Gerrit to clone repo + +# Verify job for Geode git tags to make sure there are in agreed format +- builder: + name: 'verify-geode-tag-macro' + builders: + - shell: + !include-raw: ./verify_geode_tag.sh + +- builder: + name: 'wait-pkg-mgr-macro' + builders: + - shell: + !include-raw: ./scripts/wait-for-pkg-manager.sh + # defaults for job build history - property: name: logrotate-default @@ -100,7 +148,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: @@ -116,8 +164,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: @@ -135,10 +186,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 @@ -164,6 +240,11 @@ file-paths: - compare-type: 'ANT' pattern: '{files}' + skip-vote: + successful: false + failed: false + unstable: false + notbuilt: false - trigger: name: nordix-gerrit-trigger-change-merged @@ -202,6 +283,26 @@ - 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 @@ -268,6 +369,72 @@ 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 + +# triggers for ORANSC Gerrit +- trigger: + name: oransc-gerrit-trigger-change-merged + triggers: + - gerrit: + server-name: 'ORANSC 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 Fast Data Project Gerrit +- trigger: + name: fdio-gerrit-trigger-change-merged + triggers: + - gerrit: + server-name: 'FDio 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 @@ -278,6 +445,36 @@ username: JJB_USERNAME password: JJB_USERTOKEN +# wrappers to use for jobs +- wrapper: + name: nordixinfra-harbor-creds-wrapper + wrappers: + - credentials-binding: + - username-password-separated: + credential-id: nordix-cicd-harbor-credentials + username: HARBOR_USERNAME + password: HARBOR_PASSWORD + +# wrappers to use for jobs +- wrapper: + name: nordixinfra-eiffel-github-token + wrappers: + - credentials-binding: + - username-password-separated: + credential-id: nordixinfra-eiffel-username-personal-access-token + username: NORDIXINFRA_GITHUB_USERNAME + password: NORDIXINFRA_GITHUB_TOKEN + +# wrappers to use for jobs +- wrapper: + name: nordix-gerrit-http-api-token + wrappers: + - credentials-binding: + - username-password-separated: + credential-id: nordixinfra-nordix-gerrit-http-api-token + username: GERRIT_USER + password: GERRIT_API_KEY + # timeout wrapper to use for jobs - wrapper: name: build-timeout @@ -303,7 +500,10 @@ publishers: - slack: room: '{slack-channel}' - notify-failure: True + 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: @@ -314,3 +514,19 @@ num-to-keep: 100 artifact-days-to-keep: 30 artifact-num-to-keep: 100 + +- property: + name: est-ms-teams-rebase-jobs-webhook + properties: + - office-365-connector: + webhooks: + - url: "${EST_MS_TEAMS_NORDIX_REBASE_JOBS_WEBHOOK}" + name: full + start-notification: true + notify-success: true + notify-aborted: true + notify-not-built: true + notify-unstable: true + notify-failure: true + notify-back-to-normal: true + notify-repeated-failure: true