X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;ds=inline;f=jjb%2Fintegration%2Fintegration-templates-csit.yaml;h=86206db1827f3e70c091ad2ab0d70c20a371163f;hb=a6c37eaaaf886a26576cda14edc1b24a3b318a0d;hp=8c10af1f861ca69760ab0810c553332125d3e4ab;hpb=8365699b7592be2dde8b1d03e9db0e8d638c1f1c;p=ci-management.git diff --git a/jjb/integration/integration-templates-csit.yaml b/jjb/integration/integration-templates-csit.yaml index 8c10af1f8..86206db18 100644 --- a/jjb/integration/integration-templates-csit.yaml +++ b/jjb/integration/integration-templates-csit.yaml @@ -4,8 +4,11 @@ disabled: '{disabled}' project-type: freestyle - build-node: 'ubuntu1604-docker-8c-8g' + build-node: 'ubuntu1804-docker-8c-8g' node: '{build-node}' + recipients: '' + java-version: 'openjdk11' + python-version: python3 properties: - lf-infra-properties: @@ -42,6 +45,8 @@ files: '**/{project-name}/**' builders: + - lf-update-java-alternatives: + java-version: '{java-version}' - integration-install-robotframework - inject: properties-file: 'env.properties' @@ -52,14 +57,21 @@ unstable-if: 0.0 pass-if: 100.0 - lf-infra-publish + - email: + recipients: '{recipients}' + notify-every-unstable-build: false + send-to-individuals: true - job-template: - name: '{project-name}-arm64-{stream}-verify-csit-{functionality}' - disabled: false + name: '{project-name}-{stream}-csit-{functionality}' + disabled: '{disabled}' project-type: freestyle - build-node: 'ubuntu1604-docker-arm64-4c-2g' + build-node: 'ubuntu1804-docker-8c-8g' node: '{build-node}' + recipients: '' + java-version: 'openjdk11' + python-version: python3 properties: - lf-infra-properties: @@ -79,8 +91,8 @@ scm: - gerrit-trigger-scm: - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' + refspec: '' + choosing-strategy: 'default' submodule-recursive: '{submodule-recursive}' wrappers: @@ -89,13 +101,19 @@ jenkins-ssh-credential: '{jenkins-ssh-credential}' triggers: - - gerrit-trigger-patch-submitted: + - gerrit-trigger-patch-merged: server: '{server-name}' project: 'integration/csit' branch: '{branch}' files: '**/{project-name}/**' + - timed: '@daily' + - reverse: + jobs: '{obj:trigger_jobs}' builders: + - lf-infra-pre-build + - lf-update-java-alternatives: + java-version: '{java-version}' - integration-install-robotframework - inject: properties-file: 'env.properties' @@ -106,34 +124,43 @@ unstable-if: 0.0 pass-if: 100.0 - lf-infra-publish + - email: + recipients: '{recipients}' + notify-every-unstable-build: false + send-to-individuals: true - job-template: - name: '{project-name}-{stream}-verify-csit-{functionality}-testng' - disabled: false - + # Job template for project-specific CSIT jobs + # + # The purpose of this job template is to execute + # project-specific CSIT test cases for docker image versions + # identified by unique docker tag input parameter + # + + name: '{project-name}-{stream}-project-csit' + disabled: '{disabled}' project-type: freestyle - build-node: 'ubuntu1604-docker-8c-8g' + build-node: 'ubuntu1804-docker-8c-8g' node: '{build-node}' + recipients: '' + java-version: 'openjdk11' + python-version: python3 properties: - lf-infra-properties: - project: 'integration/csit' + project: '{project}' build-days-to-keep: '{build-days-to-keep}' parameters: - infra-parameters: - project: 'integration/csit' + project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - - integration-test-plan: - test-plan: 'plans/{project-name}/{functionality}' - integration-test-options: test-options: '{robot-options}' - - html-publisher-dir: - html-dir: '{html-dir}' - - html-publisher-files: - html-files: '{html-files}' + - integration-unique-docker-tag: + unique-docker-tag: '' scm: - gerrit-trigger-scm: @@ -146,70 +173,98 @@ build-timeout: '{build-timeout}' jenkins-ssh-credential: '{jenkins-ssh-credential}' - triggers: - - gerrit-trigger-patch-submitted: - server: '{server-name}' - project: 'integration/csit' - branch: '{branch}' - files: '**/{project-name}/**' - builders: + - lf-infra-pre-build + - lf-update-java-alternatives: + java-version: '{java-version}' - integration-install-robotframework - inject: properties-file: 'env.properties' - - integration-run-test + - integration-run-project-test publishers: - - testng: - pattern: archives/testng-results.xml - escape-test-description: true - escape-exception-msg: true - show-failed-builds: true - unstable-on-skipped-tests: false - failure-on-failed-test-config: false - - junit: - results: archives/testng-results.xml - health-scale-factor: 1.0 - allow-empty-results: true - - integration-robot: + - integration-project-robot: unstable-if: 0.0 pass-if: 100.0 - - html-publisher: - allow-missing: true - dir: '{html-dir}' - files: '{html-files}' - keep-all: false - link-to-last-build: false - name: ExtentReport - lf-infra-publish + - email: + recipients: '{recipients}' + notify-every-unstable-build: false + send-to-individuals: true - job-template: - name: '{project-name}-arm64-{stream}-verify-csit-{functionality}-testng' - disabled: false + # Job template for unified review verification jobs in + # project-specific CSIT flow for projects built with maven + # + # The purpose of this job template is to: + # 1. build local snapshot docker images with maven + # 2. run CSIT job with the local images + # 3. give a verify vote to the triggering review + # + + name: '{project-name}-review-verification-maven-{stream}' + + ###################### + # Default parameters # + ###################### + + branch: master + build-days-to-keep: 30 # 30 days in case a release takes long to get approved. + build-timeout: 60 + disable-job: false + git-url: "$GIT_URL/$PROJECT" + github-url: "https://github.com" + maven-versions-plugin: false + version-properties-file: version.properties + mvn-central: false + mvn-global-settings: global-settings + mvn-goals: clean deploy + mvn-opts: "" + mvn-params: "" + maven-version: mvn36 + ossrh-profile-id: "" + mvn-pom: "" + stream: master + submodule-recursive: true + submodule-timeout: 10 + submodule-disable: false + + disabled: '{disabled}' + archive-artifacts: > + **/*.log + **/hs_err_*.log + **/target/**/feature.xml + **/target/failsafe-reports/failsafe-summary.xml + **/target/surefire-reports/*-output.txt project-type: freestyle - build-node: 'ubuntu1604-docker-arm64-4c-2g' node: '{build-node}' + java-version: 'openjdk11' properties: - lf-infra-properties: - project: 'integration/csit' + project: '{project}' build-days-to-keep: '{build-days-to-keep}' - parameters: - infra-parameters: - project: 'integration/csit' + project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - - integration-test-plan: - test-plan: 'plans/{project-name}/{functionality}' + - lf-infra-maven-parameters: + mvn-opts: "{mvn-opts}" + mvn-params: "{mvn-params}" + mvn-version: "{mvn-version}" + - maven-exec: + maven-version: '{maven-version}' + - maven-params: + mvn-params: '{mvn-params}' + - string: + name: ARCHIVE_ARTIFACTS + default: "{archive-artifacts}" + description: Artifacts to archive to the logs server. - integration-test-options: test-options: '{robot-options}' - - html-publisher-dir: - html-dir: '{html-dir}' - - html-publisher-files: - html-files: '{html-files}' scm: - gerrit-trigger-scm: @@ -221,65 +276,118 @@ - lf-infra-wrappers: build-timeout: '{build-timeout}' jenkins-ssh-credential: '{jenkins-ssh-credential}' - - triggers: - - gerrit-trigger-patch-submitted: - server: '{server-name}' - project: 'integration/csit' - branch: '{branch}' - files: '**/{project-name}/**' - builders: + - lf-infra-pre-build + - lf-jacoco-nojava-workaround + - lf-maven-install: + mvn-version: "{mvn-version}" + - lf-update-java-alternatives: + java-version: "{java-version}" + - lf-infra-docker-login: + global-settings-file: "{mvn-global-settings}" + settings-file: "{mvn-settings}" + # must provide maven settings AFTER docker-login due to its cleanup + - lf-provide-maven-settings: + global-settings-file: "{mvn-global-settings}" + settings-file: "{mvn-settings}" + - lf-maven-versions-plugin: + maven-versions-plugin: "{maven-versions-plugin}" + version-properties-file: "{version-properties-file}" + mvn-version: "{mvn-version}" + mvn-pom: "{mvn-pom}" + mvn-settings: "{mvn-settings}" + - inject: + properties-content: | + CONTAINER_PULL_REGISTRY={container-public-registry} + CONTAINER_PUSH_REGISTRY={container-snapshot-registry} + - lf-maven-build: + mvn-goals: "{mvn-goals}" - integration-install-robotframework - inject: properties-file: 'env.properties' - - integration-run-test + - integration-run-project-test + - lf-provide-maven-settings-cleanup + triggers: + - gerrit-trigger-patch-submitted: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '**' publishers: - - testng: - pattern: archives/testng-results.xml - escape-test-description: true - escape-exception-msg: true - show-failed-builds: true - unstable-on-skipped-tests: false - failure-on-failed-test-config: false - - junit: - results: archives/testng-results.xml - health-scale-factor: 1.0 - allow-empty-results: true - - integration-robot: - unstable-if: 0.0 - pass-if: 100.0 - - html-publisher: - allow-missing: true - dir: '{html-dir}' - files: '{html-files}' - keep-all: false - link-to-last-build: false - name: ExtentReport - lf-infra-publish - job-template: - name: '{project-name}-{stream}-csit-{functionality}' - disabled: '{disabled}' + # Job template for unified merge verification jobs in + # project-specific CSIT flow for projects built with maven + # + # The purpose of this job template is to: + # 1. build local snapshot docker images from master with maven + # 2. run CSIT job with the local images + # + + name: '{project-name}-merge-verification-maven-{stream}' + + ###################### + # Default parameters # + ###################### + + branch: master + build-days-to-keep: 30 # 30 days in case a release takes long to get approved. + build-timeout: 60 + disable-job: false + git-url: "$GIT_URL/$PROJECT" + github-url: "https://github.com" + maven-versions-plugin: false + version-properties-file: version.properties + mvn-central: false + mvn-global-settings: global-settings + mvn-goals: clean deploy + mvn-opts: "" + mvn-params: "" + maven-version: mvn36 + ossrh-profile-id: "" + mvn-pom: "" + sign-artifacts: false + sign-mode: serial + stream: master + submodule-recursive: true + submodule-timeout: 10 + submodule-disable: false + disabled: '{disabled}' + archive-artifacts: > + **/*.log + **/hs_err_*.log + **/target/**/feature.xml + **/target/failsafe-reports/failsafe-summary.xml + **/target/surefire-reports/*-output.txt project-type: freestyle - build-node: 'ubuntu1604-docker-8c-8g' node: '{build-node}' + java-version: 'openjdk11' properties: - lf-infra-properties: - project: 'integration/csit' + project: '{project}' build-days-to-keep: '{build-days-to-keep}' - parameters: - infra-parameters: - project: 'integration/csit' + project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - - integration-test-plan: - test-plan: 'plans/{project-name}/{functionality}' + - lf-infra-maven-parameters: + mvn-opts: "{mvn-opts}" + mvn-params: "{mvn-params}" + mvn-version: "{mvn-version}" + - maven-exec: + maven-version: '{maven-version}' + - maven-params: + mvn-params: '{mvn-params}' + - string: + name: ARCHIVE_ARTIFACTS + default: "{archive-artifacts}" + description: Artifacts to archive to the logs server. - integration-test-options: test-options: '{robot-options}' @@ -293,240 +401,191 @@ - lf-infra-wrappers: build-timeout: '{build-timeout}' jenkins-ssh-credential: '{jenkins-ssh-credential}' - - triggers: - - gerrit-trigger-patch-merged: - server: '{server-name}' - project: 'integration/csit' - branch: '{branch}' - files: '**/{project-name}/**' - - timed: '@daily' - - reverse: - jobs: '{obj:trigger_jobs}' - builders: + - lf-infra-pre-build + - lf-jacoco-nojava-workaround + - lf-maven-install: + mvn-version: "{mvn-version}" + - lf-update-java-alternatives: + java-version: "{java-version}" + - lf-infra-docker-login: + global-settings-file: "{mvn-global-settings}" + settings-file: "{mvn-settings}" + # must provide maven settings AFTER docker-login due to its cleanup + - lf-provide-maven-settings: + global-settings-file: "{mvn-global-settings}" + settings-file: "{mvn-settings}" + - lf-maven-versions-plugin: + maven-versions-plugin: "{maven-versions-plugin}" + version-properties-file: "{version-properties-file}" + mvn-version: "{mvn-version}" + mvn-pom: "{mvn-pom}" + mvn-settings: "{mvn-settings}" + - inject: + properties-content: | + CONTAINER_PULL_REGISTRY={container-public-registry} + CONTAINER_PUSH_REGISTRY={container-snapshot-registry} + - lf-maven-build: + mvn-goals: "{mvn-goals}" - integration-install-robotframework - inject: properties-file: 'env.properties' - - integration-run-test - - publishers: - - integration-robot: - unstable-if: 0.0 - pass-if: 100.0 - - lf-infra-publish - -- job-template: - name: '{project-name}-arm64-{stream}-csit-{functionality}' - disabled: false - - project-type: freestyle - build-node: 'ubuntu1604-docker-arm64-4c-2g' - node: '{build-node}' - - properties: - - lf-infra-properties: - project: 'integration/csit' - build-days-to-keep: '{build-days-to-keep}' - - parameters: - - infra-parameters: - project: 'integration/csit' - branch: '{branch}' - refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts}' - - integration-test-plan: - test-plan: 'plans/{project-name}/{functionality}' - - integration-test-options: - test-options: '{robot-options}' - - scm: - - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' - submodule-recursive: '{submodule-recursive}' - - wrappers: - - lf-infra-wrappers: - build-timeout: '{build-timeout}' - jenkins-ssh-credential: '{jenkins-ssh-credential}' + - integration-run-project-test + - lf-provide-maven-settings-cleanup triggers: - gerrit-trigger-patch-merged: server: '{server-name}' - project: 'integration/csit' + project: '{project}' branch: '{branch}' - files: '**/{project-name}/**' - - timed: '@daily' - - reverse: - jobs: '{obj:trigger_jobs}' - - builders: - - integration-install-robotframework - - inject: - properties-file: 'env.properties' - - integration-run-test - + files: '**' publishers: - - integration-robot: - unstable-if: 0.0 - pass-if: 100.0 - lf-infra-publish - job-template: - name: '{project-name}-{stream}-csit-{functionality}-testng' - disabled: false - + # Job template for review verification jobs in + # project-specific CSIT flow + # + # The purpose of this job template is to: + # 1. trigger snapshot docker build job + # 2. trigger CSIT job + # 3. give a verify vote to the triggering review + # + + name: '{project-name}-review-verification-{stream}' + disabled: '{disabled}' project-type: freestyle - build-node: 'ubuntu1604-docker-8c-8g' - node: '{build-node}' + build-node: 'ubuntu1804-docker-8c-8g' + java-version: 'openjdk11' properties: - lf-infra-properties: - project: 'integration/csit' + project: '{project}' build-days-to-keep: '{build-days-to-keep}' - parameters: - infra-parameters: - project: 'integration/csit' + project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - - integration-test-plan: - test-plan: 'plans/{project-name}/{functionality}' - - integration-test-options: - test-options: '{robot-options}' - - html-publisher-dir: - html-dir: '{html-dir}' - - html-publisher-files: - html-files: '{html-files}' - scm: - gerrit-trigger-scm: - refspec: '' - choosing-strategy: 'default' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' submodule-recursive: '{submodule-recursive}' - wrappers: - lf-infra-wrappers: build-timeout: '{build-timeout}' jenkins-ssh-credential: '{jenkins-ssh-credential}' - + builders: + - lf-infra-pre-build + - lf-maven-install: + mvn-version: "{mvn-version}" + - lf-update-java-alternatives: + java-version: "{java-version}" + - lf-provide-maven-settings: + global-settings-file: "{mvn-global-settings}" + settings-file: "{mvn-settings}" + - trigger-builds: + - project: "{project-name}-{stream}-{artifact-type}-docker-snapshot" + predefined-parameters: | + UNIQUE_DOCKER_TAG=$BUILD_TAG + PROJECT=$PROJECT + BRANCH=$BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + block: true + - trigger-builds: + - project: "{project-name}-{stream}-project-csit" + predefined-parameters: | + UNIQUE_DOCKER_TAG=$BUILD_TAG + PROJECT=$PROJECT + BRANCH=$BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + block: true triggers: - - gerrit-trigger-patch-merged: + - gerrit-trigger-patch-submitted: server: '{server-name}' - project: 'integration/csit' + project: '{project}' branch: '{branch}' - files: '**/{project-name}/**' - - timed: '@daily' - - reverse: - jobs: '{obj:trigger_jobs}' - - builders: - - integration-install-robotframework - - inject: - properties-file: 'env.properties' - - integration-run-test - + files: '**' publishers: - - integration-robot: - unstable-if: 0.0 - pass-if: 100.0 - - testng: - pattern: archives/testng-results.xml - escape-test-description: true - escape-exception-msg: true - show-failed-builds: true - unstable-on-skipped-tests: false - failure-on-failed-test-config: false - - junit: - results: archives/testng-results.xml - health-scale-factor: 1.0 - allow-empty-results: true - - html-publisher: - allow-missing: true - dir: '{html-dir}' - files: '{html-files}' - keep-all: false - link-to-last-build: false - name: ExtentReport - lf-infra-publish - job-template: - name: '{project-name}-arm64-{stream}-csit-{functionality}-testng' - disabled: false - + # Job template for merge verification jobs in + # project-specific CSIT flow + # + # The purpose of this job template is to trigger + # the following jobs in sequence: + # 1. snapshot docker build job + # 2. CSIT job + # 3. docker staging job + # + + name: '{project-name}-merge-verification-{stream}' + disabled: '{disabled}' project-type: freestyle - build-node: 'ubuntu1604-docker-arm64-4c-2g' - node: '{build-node}' + build-node: 'ubuntu1804-docker-8c-8g' + java-version: 'openjdk11' properties: - lf-infra-properties: - project: 'integration/csit' + project: '{project}' build-days-to-keep: '{build-days-to-keep}' - parameters: - infra-parameters: - project: 'integration/csit' + project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - - integration-test-plan: - test-plan: 'plans/{project-name}/{functionality}' - - integration-test-options: - test-options: '{robot-options}' - - html-publisher-dir: - html-dir: '{html-dir}' - - html-publisher-files: - html-files: '{html-files}' - scm: - gerrit-trigger-scm: refspec: '' choosing-strategy: 'default' submodule-recursive: '{submodule-recursive}' - wrappers: - lf-infra-wrappers: build-timeout: '{build-timeout}' jenkins-ssh-credential: '{jenkins-ssh-credential}' - + builders: + - lf-infra-pre-build + - lf-maven-install: + mvn-version: "{mvn-version}" + - lf-update-java-alternatives: + java-version: "{java-version}" + - lf-provide-maven-settings: + global-settings-file: "{mvn-global-settings}" + settings-file: "{mvn-settings}" + - trigger-builds: + - project: "{project-name}-{stream}-{artifact-type}-docker-snapshot" + predefined-parameters: | + UNIQUE_DOCKER_TAG=$BUILD_TAG + PROJECT=$PROJECT + BRANCH=$BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + block: true + - trigger-builds: + - project: "{project-name}-{stream}-project-csit" + predefined-parameters: | + UNIQUE_DOCKER_TAG=$BUILD_TAG + PROJECT=$PROJECT + BRANCH=$BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + block: true + - trigger-builds: + - project: "{project-name}-{stream}-docker-staging" + predefined-parameters: | + UNIQUE_DOCKER_TAG=$BUILD_TAG + PROJECT=$PROJECT + BRANCH=$BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + block: true triggers: - gerrit-trigger-patch-merged: server: '{server-name}' - project: 'integration/csit' + project: '{project}' branch: '{branch}' - files: '**/{project-name}/**' - - timed: '@daily' - - reverse: - jobs: '{obj:trigger_jobs}' - - builders: - - integration-install-robotframework - - inject: - properties-file: 'env.properties' - - integration-run-test - + files: '**' publishers: - - integration-robot: - unstable-if: 0.0 - pass-if: 100.0 - - testng: - pattern: archives/testng-results.xml - escape-test-description: true - escape-exception-msg: true - show-failed-builds: true - unstable-on-skipped-tests: false - failure-on-failed-test-config: false - - junit: - results: archives/testng-results.xml - health-scale-factor: 1.0 - allow-empty-results: true - - html-publisher: - allow-missing: true - dir: '{html-dir}' - files: '{html-files}' - keep-all: false - link-to-last-build: false - name: ExtentReport - lf-infra-publish +