X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fintegration%2Fintegration-test-jobs.yaml;h=cca55e101ca23491ca784e854062dd3bf6d5d5d7;hb=31ec3acc2a613a48ee4547cc044b286f43d53b28;hp=7a4d3fbfaf9bc01b552da0e2051a926030bb7b3a;hpb=f7d35c1dc0b5fdf640ec8ef5164d1e917039337d;p=releng%2Fbuilder.git diff --git a/jjb/integration/integration-test-jobs.yaml b/jjb/integration/integration-test-jobs.yaml index 7a4d3fbfa..cca55e101 100644 --- a/jjb/integration/integration-test-jobs.yaml +++ b/jjb/integration/integration-test-jobs.yaml @@ -8,31 +8,46 @@ - '{project-name}-verify-tox-master' - 'integration-csit-verify-1node-library' - 'integration-distribution-test-{stream}' + - 'integration-sanity-test-{stream}' - 'integration-patch-test-{stream}' - 'integration-multipatch-test-{stream}' + - 'integration-distribution-weekly-test-trigger-{stream}' # CSIT Lists in releng-defaults.yaml stream: - - carbon: + - nitrogen: branch: 'master' + jre: 'openjdk8' + csit-list: '{csit-list-nitrogen}' + csit-sanity-list: '{csit-sanity-list-nitrogen}' + csit-weekly-list: '{csit-weekly-list-nitrogen}' + schedule-weekly: 'H 12 * * 0' + - carbon: + branch: 'stable/carbon' jdk: 'openjdk8' jre: 'openjdk8' csit-list: '{csit-list-carbon}' - schedule: 'H H * * 0-4' + csit-sanity-list: '{csit-sanity-list-carbon}' + csit-weekly-list: '{csit-weekly-list-carbon}' + schedule-weekly: 'H 12 * * 0' - boron: branch: 'stable/boron' jdk: 'openjdk8' jre: 'openjdk8' csit-list: '{csit-list-boron}' - schedule: 'H H * * 0-4' + csit-sanity-list: '{csit-sanity-list-boron}' + csit-weekly-list: '{csit-weekly-list-boron}' + schedule-weekly: 'H 12 * * 0' - beryllium: branch: 'stable/beryllium' jdk: 'openjdk7' jre: 'openjdk7' csit-list: '{csit-list-beryllium}' - schedule: 'H H * * 6' + csit-sanity-list: '' + csit-weekly-list: '' + schedule-weekly: 'H 12 * * 0' # tools system image tools_system_image: Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300 @@ -60,6 +75,7 @@ parameters: - opendaylight-infra-parameters: + os-cloud: '{os-cloud}' project: '{project}' branch: '{test-branch}' refspec: 'refs/heads/{test-branch}' @@ -144,7 +160,7 @@ # Template: integration-distribution-test-{stream} # Goal: Verify a distribution through all system test available -# Operation: This daily job template takes a distribution and passes all available system test +# Operation: This template takes a distribution and passes all available system test - job-template: name: 'integration-distribution-test-{stream}' @@ -162,9 +178,6 @@ - integration-jdk-version: jdkversion: '{jre}' - triggers: - - timed: '{schedule}' - builders: - trigger-builds: - project: '{csit-list}' @@ -177,6 +190,38 @@ email-recipients: '{email-recipients}' email-prefix: '[integration]' +# Template: integration-sanity-test-{stream} +# Goal: Verify a distribution through sanity test +# Operation: This template takes a distribution and passes sanity test + +- job-template: + name: 'integration-sanity-test-{stream}' + + project-type: freestyle + node: centos7-robot-2c-2g + + properties: + - opendaylight-infra-properties: + build-days-to-keep: '{build-days-to-keep}' + + parameters: + - integration-bundleurl: + bundleurl: '{bundleurl}' + - integration-jdk-version: + jdkversion: '{jre}' + + builders: + - trigger-builds: + - project: '{csit-sanity-list}' + block: true + predefined-parameters: + BUNDLEURL=$BUNDLEURL + + publishers: + - email-notification: + email-recipients: '{email-recipients}' + email-prefix: '[integration]' + # Template: integration-patch-test-{stream} # Goal: Build a patch and run all available system test on a distribution containing the change # Operation: This job template builds a patch, creates a distribution containing the patch, and @@ -195,6 +240,7 @@ parameters: - opendaylight-infra-parameters: + os-cloud: '{os-cloud}' project: '$GERRIT_PROJECT' branch: '{branch}' refspec: '$GERRIT_REFSPEC' @@ -236,9 +282,8 @@ prebuilders: - integration-rebase-gerrit-patch - - integration-get-bundle-url - - inject: - properties-file: 'bundle.txt' + - integration-get-bundle-url: + bundle-pom: distribution/pom.xml - wipe-org-opendaylight-repo - provide-maven-settings: global-settings-file: 'odl-global-settings' @@ -278,7 +323,7 @@ - project: '{csit-list}' block: true predefined-parameters: - BUNDLEURL=$BUNDLEURL + BUNDLEURL=$BUNDLE_URL publishers: - opendaylight-infra-shiplogs: @@ -287,14 +332,31 @@ email-recipients: '{email-recipients}' email-prefix: '[$GERRIT_PROJECT]' -# Template: integration-multipatch-test-{stream} -# Goal: Build one or more patches and run all available system test on a distribution containing the change -# Operation: This job template checks out and builds each patch provided in job parameters, creates a distribution -# containing these patches, and triggers the distribution test job which includes most (if not all) available -# CSIT jobs - job-template: name: 'integration-multipatch-test-{stream}' + # Goal: Build one or more patches and run all available system test on a distribution containing the change. + # Operation: This job template checks out and builds each patch provided in job parameters, creates a distribution + # containing these patches, and triggers the distribution test job which includes most (if not all) available + # CSIT jobs + # TODO: Move the following to appropriate readthedocs document. + # Recommended Sandbox usage: + # 0. Create this job and a CSIT job you want to run on the new .zip in Sandbox (disable timed triggers). + # 1. Copy the csit job name to clipboard. + # 2. Navigate to Sandbox page of this job. + # 3. Click "Configure". + # 4. Locate "Trigger/call builds on other projects" (under "Post Steps" tab). + # 5. Delete the long value of "Projects to build" field and paste the job name from clipboard (ctrl+a, ctrl+v). + # 6. Click "Save" button. + # 7. Click "Build with Parameters". + # yamllint disable-line rule:line-length + # 8. Start the job with your parameters, see https://wiki.opendaylight.org/view/Integration/Test/Running_System_Tests#Running_System_Tests_Using_Custom_Distribution_Built_From_Multiple_Patches + # 9. The multipatch job waits for the csit job to finish, so abort csit if you see something went wrong. + # 10. Navigate to Sandbox page of the csit job, click the run triggered from multipatch. + # 11. Click Parameters and copy the long value of BUNDLEURL field to clipboard. + # 12. Run the same csit job woth different patchset or test options, or other csit jobs, with this BUNDLEURL value + # so you do not have to wait for multipatch build. Repeat step 12. + # 13. Currently, the .zip lasts 24 hours (?) so you may need to jump to step 2 (or 0) after some time. project-type: maven node: centos7-java-builder-8c-8g @@ -307,9 +369,12 @@ parameters: - patches-to-build-parameter: patches_to_build: '$PATCHES_TO_BUILD' + - run-test-parameter: + run-test: 'false' - integration-distribution-branch: branch: '{branch}' - opendaylight-infra-parameters: + os-cloud: '{os-cloud}' project: 'integration/distribution' branch: '{branch}' refspec: 'refs/heads/{branch}' @@ -345,15 +410,50 @@ post-step-run-condition: 'SUCCESS' postbuilders: + - conditional-step: + condition-kind: boolean-expression + condition-expression: $RUNTEST + steps: + - trigger-builds: + - project: '{csit-list}' + block: true + predefined-parameters: + BUNDLEURL=$BUNDLEURL + + publishers: + - opendaylight-infra-shiplogs: + maven-version: 'mvn33' + - email-notification: + email-recipients: '{email-recipients}' + email-prefix: '[int/dist]' + +- job-template: + name: 'integration-distribution-weekly-test-trigger-{stream}' + + project-type: freestyle + node: centos7-robot-2c-2g + + properties: + - opendaylight-infra-properties: + build-days-to-keep: '{build-days-to-keep}' + + parameters: + - integration-bundleurl: + bundleurl: '{bundleurl}' + - integration-jdk-version: + jdkversion: '{jre}' + + triggers: + - timed: '{schedule-weekly}' + + builders: - trigger-builds: - - project: '{csit-list}' + - project: '{csit-weekly-list}' block: true predefined-parameters: BUNDLEURL=$BUNDLEURL publishers: - - opendaylight-infra-shiplogs: - maven-version: 'mvn33' - email-notification: email-recipients: '{email-recipients}' - email-prefix: '[int/dist]' + email-prefix: '[integration]'