X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=jjb%2Fglobal-macros.yaml;h=0c614bf85bc7390c08031211422e50e9b5d137b9;hb=50b8b44a18357f6d777f9bff2bbb58c391f909a6;hp=f4c1a2c833faee41dc181b39957777850ac0d2b7;hpb=6c6976f77d5f973673a23dcea12366211481ab67;p=ci-management.git diff --git a/jjb/global-macros.yaml b/jjb/global-macros.yaml index f4c1a2c83..0c614bf85 100644 --- a/jjb/global-macros.yaml +++ b/jjb/global-macros.yaml @@ -4,12 +4,6 @@ # vim: sw=2 ts=2 sts=2 et : # BUILDERS -- builder: - name: ci-management-check-unicode - builders: - - shell: | - $WORKSPACE/scripts/check-unicode.sh jjb/ - - builder: name: provide-maven-settings builders: @@ -29,6 +23,20 @@ maven-version: '{maven-version}' goals: '--version' +- builder: + name: maven-set-release-version + builders: + - maven-target: + maven-version: '{maven-version}' + pom: '{pom}' + goals: 'versions:set versions:update-child-modules versions:commit -B' + properties: + - 'newVersion=${{release_version}}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + - builder: name: maven-docker-push-release builders: @@ -42,8 +50,8 @@ global-settings-type: cfp properties: - maven.test.skip=true - - docker.pull.registry=nexus3.openecomp.org:10001 - - docker.push.registry=nexus3.openecomp.org:10002 + - docker.pull.registry=nexus3.onap.org:10001 + - docker.push.registry=nexus3.onap.org:10002 - builder: name: maven-docker-push-daily @@ -51,24 +59,31 @@ - maven-target: maven-version: '{maven-version}' pom: '{pom}' - goals: 'clean deploy -B -P {mvn-profile}' + goals: 'clean deploy -B -P {mvn-profile} {mvn-params}' settings: '{mvn-settings}' settings-type: cfp global-settings: 'global-settings' global-settings-type: cfp properties: - - maven.test.skip=true - - docker.pull.registry=nexus3.openecomp.org:10001 - - docker.push.registry=nexus3.openecomp.org:10003 + - docker.pull.registry=nexus3.onap.org:10001 + - docker.push.registry=nexus3.onap.org:10003 - builder: name: docker-login builders: - shell: !include-raw: include-docker-login.sh +- builder: + name: publish-pypi + builders: + - inject: + properties-content: PYPI_SERVER={pypi-server} + - shell: + !include-raw-escape: ../shell/pypi-publish.sh + # PARAMETERS - parameter: - name: ecomp-infra-parameters + name: infra-parameters parameters: - string: name: PROJECT @@ -99,6 +114,14 @@ default: '$JOB_NAME-$BUILD_NUMBER' description: 'Used by Heat to generate a unique stack & vm name' +- parameter: + name: maven-params + parameters: + - string: + name: MAVEN_PARAMS + default: '{mvn-params}' + description: Maven parameters to pass to the mvn command. + - parameter: name: maven-exec parameters: @@ -109,9 +132,19 @@ # yamllint enable description: 'Maven selector to be used by shell scripts' +- parameter: + name: docker-image-name + parameters: + - string: + name: DOCKER_IMAGE_NAME + # yamllint disable rule:line-length + default: '{docker-image-name}' + # yamllint enable + description: 'Docker image name, e.g. onap/appc' + # PROPERTIES - property: - name: ecomp-infra-properties + name: infra-properties properties: - build-discarder: days-to-keep: '{build-days-to-keep}' @@ -169,42 +202,49 @@ unhealthy: 40 - publisher: - name: ecomp-infra-shiplogs - # To archive things, the job will need to create an "archives" directory in - # the workspace and this macro will handle copying the contents of the - # archives directory. - # - # Uses the build parameter ARCHIVE_ARTIFACTS if not empty to find files to - # archive. You can pass globstar patterns for example "**/*.xml **/*.log" as - # the archive pattern. This is a space separated list of files to archive. - # - # Also ensure that the workspace is cleaned up at the end of the build. + name: checkstyle-result + publishers: + - checkstyle: + pattern: '**/checkstyle-result.xml' + healthy: 0 + unhealthy: 100 + health-threshold: 'high' + thresholds: + unstable: + total-all: 30 + total-high: 15 + total-normal: 20 + total-low: 25 + new-all: 5 + new-high: 0 + new-normal: 2 + new-low: 5 + +- publisher: + name: checkstyle-result-daily publishers: - - postbuildscript: - builders: - - shell: !include-raw: include-raw-deploy-archives.sh - - maven-target: - maven-version: '{maven-version}' - pom: '.archives/deploy-archives.xml' - goals: 'clean deploy -V -B -q -Dmaven.repo.local=/tmp/r' - settings: 'jenkins-log-archives-settings' - settings-type: cfp - global-settings: 'global-settings' - global-settings-type: cfp - - description-setter: - regexp: '^Build logs: .*' - script-only-if-succeeded: false - script-only-if-failed: false - mark-unstable-if-failed: true - - workspace-cleanup: - fail-build: false` + - checkstyle: + pattern: '**/checkstyle-result.xml' + healthy: 0 + unhealthy: 100 + health-threshold: 'high' + thresholds: + unstable: + total-all: 30 + total-high: 15 + total-normal: 20 + total-low: 25 + new-all: 1 + new-high: 0 + new-normal: 1 + new-low: 1 # SCMS - scm: name: git-scm scm: - git: - credentials-id: 'ecomp-jenkins-ssh' + credentials-id: 'onap-jenkins-ssh' url: '$GIT_BASE' refspec: '' branches: @@ -217,7 +257,7 @@ name: gerrit-trigger-scm scm: - git: - credentials-id: 'ecomp-jenkins-ssh' + credentials-id: 'onap-jenkins-ssh' url: '$GIT_BASE' refspec: '{refspec}' branches: @@ -225,12 +265,14 @@ skip-tag: true timeout: 30 choosing-strategy: '{choosing-strategy}' + submodule: + recursive: '{submodule-recursive}' - scm: name: gerrit-trigger-scm-basedir scm: - git: - credentials-id: 'ecomp-jenkins-ssh' + credentials-id: 'onap-jenkins-ssh' url: '$GIT_BASE' refspec: '{refspec}' branches: @@ -244,7 +286,7 @@ name: git-branch-scm scm: - git: - credentials-id: 'ecomp-jenkins-ssh' + credentials-id: 'onap-jenkins-ssh' url: '$GIT_BASE' refspec: '' branches: @@ -257,7 +299,7 @@ name: git-extra-project scm: - git: - credentials-id: 'ecomp-jenkins-ssh' + credentials-id: 'onap-jenkins-ssh' url: '$GIT_NO_PROJECT/{project}' refspec: '{refspec}' branches: @@ -320,6 +362,48 @@ - compare-type: 'ANT' pattern: '{files}' +- trigger: + name: gerrit-trigger-helm-patch-submitted + triggers: + - gerrit: + server-name: '{server}' + 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: '^Patch Set\s+\d+:\s+(recheck|reverify|verify-helm)\s*$' + 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: gerrit-trigger-helm-patch-merged + triggers: + - gerrit: + server-name: '{server}' + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: '^remerge-helm$' + 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: gerrit-trigger-release-manually triggers: @@ -355,11 +439,48 @@ timeout: 360 fail: true +- wrapper: + name: golang110 + wrappers: + - raw: + xml: | + + Golang 1.10 + + +- wrapper: + name: golang111 + wrappers: + - raw: + xml: | + + Golang 1.11 + + +- wrapper: + name: golang112 + wrappers: + - raw: + xml: | + + Golang 1.12 + + +- wrapper: + name: golang114 + wrappers: + - raw: + xml: | + + Golang 1.14 + + - wrapper: # This wrapper is required for all jobs as it configures the wrappers # needed by the eCOMP infra. - name: ecomp-infra-wrappers + name: infra-wrappers wrappers: + - timestamps - timeout: type: absolute timeout: '{build-timeout}' @@ -367,6 +488,23 @@ fail: true - ssh-agent-credentials: users: - - 'ecomp-jenkins-ssh' + - 'onap-jenkins-ssh' - openstack: single-use: true + +- wrapper: + # This wrapper is used for docker build jobs to use the dedicated docker + # build VM and turn off OpenStack single-use + name: infra-wrappers-docker-build + wrappers: + - timestamps + - timeout: + type: absolute + timeout: '{build-timeout}' + timeout-var: 'BUILD_TIMEOUT' + fail: true + - ssh-agent-credentials: + users: + - 'onap-jenkins-ssh' + - openstack: + single-use: false