| --- |
| # these parameters are used for infra related variables |
| - parameter: |
| name: infra-parameters |
| parameters: |
| - string: |
| name: JJB_GIT_REPO |
| default: https://review.opendev.org/jjb/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 |
| parameters: |
| - string: |
| name: PROJECT |
| default: '{project}' |
| description: JJB configured PROJECT parameter to identify a Nordix Gerrit project |
| - string: |
| name: BRANCH |
| default: '{branch}' |
| description: "JJB configured BRANCH parameter (e.g. master, nordix-dev)" |
| |
| # these parameters are used for streaming changes from various Gerrit Systems |
| - parameter: |
| name: nordix-gerrit-parameters |
| parameters: |
| - string: |
| name: GERRIT_USER |
| default: infra |
| description: Non-interactive user to stream Gerrit Events on Nordix Gerrit |
| - string: |
| name: GIT_BASE_HTTPS |
| default: https://gerrit.nordix.org |
| description: HTTPS URL of Project Repo on Nordix Gerrit to clone repo |
| - string: |
| name: GIT_BASE_SSH |
| default: ssh://$GERRIT_USER@gerrit.nordix.org:29418 |
| description: HTTPS URL of Project Repo on Nordix Gerrit to clone repo |
| |
| - parameter: |
| name: onap-gerrit-parameters |
| parameters: |
| - string: |
| name: GERRIT_USER |
| default: nordix |
| description: Non-interactive user to stream Gerrit Events on ONAP Gerrit |
| - string: |
| name: GIT_BASE_HTTPS |
| default: https://gerrit.onap.org/r/p |
| description: HTTPS URL to Project Repo on ONAP Gerrit to clone repo |
| - string: |
| name: GIT_BASE_SSH |
| 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 |
| |
| - 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 |
| |
| # defaults for job build history |
| - property: |
| name: logrotate-default |
| properties: |
| - build-discarder: |
| days-to-keep: 60 |
| num-to-keep: 200 |
| artifact-days-to-keep: 60 |
| artifact-num-to-keep: 200 |
| |
| # defaults for SCM, Gerrit and GitHub |
| - scm: |
| name: git-scm |
| scm: |
| - git: |
| url: '$GIT_BASE_SSH/$PROJECT' |
| credentials-id: '{ssh-credentials-id}' |
| branches: |
| - 'refs/heads/{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' |
| |
| - scm: |
| name: git-scm-gerrit |
| scm: |
| - git: |
| url: '$GIT_BASE_SSH/$PROJECT' |
| credentials-id: '{ssh-credentials-id}' |
| branches: |
| - 'refs/heads/{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: '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 |
| triggers: |
| - gerrit: |
| server-name: 'Nordix Gerrit' |
| 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: 'REG_EXP' |
| project-pattern: '{project}' |
| branches: |
| - branch-compare-type: 'ANT' |
| branch-pattern: '**/{branch}' |
| file-paths: |
| - compare-type: 'ANT' |
| pattern: '{files}' |
| skip-vote: |
| successful: false |
| failed: false |
| unstable: false |
| notbuilt: false |
| |
| - trigger: |
| name: nordix-gerrit-trigger-change-merged |
| triggers: |
| - gerrit: |
| server-name: 'Nordix 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}' |
| |
| - 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 |
| triggers: |
| - gerrit: |
| server-name: 'ONAP 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 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 |
| |
| # 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 |
| |
| # wrappers to use for jobs |
| - wrapper: |
| name: nordixinfra-jjb-creds-wrapper |
| wrappers: |
| - credentials-binding: |
| - username-password-separated: |
| 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 |