X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fintegration%2Fintegration-test-jobs.yaml;h=11d29ebe1527ffc8ad01dbbcb86e5531881ff2b1;hb=901a464113b2ec230a0fd2aa5a5ebd4ce0909672;hp=b0a1dbf688869504d3f51c2eeef8ce683a91a8b0;hpb=67a1e272f9034acffdc283707b72b6af7cf3dd4f;p=releng%2Fbuilder.git diff --git a/jjb/integration/integration-test-jobs.yaml b/jjb/integration/integration-test-jobs.yaml index b0a1dbf68..11d29ebe1 100644 --- a/jjb/integration/integration-test-jobs.yaml +++ b/jjb/integration/integration-test-jobs.yaml @@ -12,45 +12,61 @@ - 'integration-patch-test-{stream}' - 'integration-multipatch-test-{stream}' - 'integration-distribution-weekly-test-trigger-{stream}' + - 'integration-distribution-high-frequency-test-trigger-{stream}' + - 'integration-update-csit-tests-{stream}' # CSIT Lists in releng-defaults.yaml stream: - - nitrogen: + - oxygen: branch: 'master' + jdk: 'openjdk8' + csit-blacklist: longevity gate sanity daexim jsonrpc + csit-list: !include: csit-jobs-oxygen.lst + csit-sanity-list: '{csit-sanity-list-oxygen}' + csit-weekly-list: '{csit-weekly-list-oxygen}' + schedule-weekly: 'H 23 * * 6' + csit-high-frequency-list: '{csit-high-frequency-list-oxygen}' + schedule-high-frequency: '' + + - nitrogen: + branch: 'stable/nitrogen' jre: 'openjdk8' - csit-list: '{csit-list-nitrogen}' + csit-blacklist: longevity gate sanity daexim jsonrpc + csit-list: !include: csit-jobs-nitrogen.lst csit-sanity-list: '{csit-sanity-list-nitrogen}' csit-weekly-list: '{csit-weekly-list-nitrogen}' - schedule-weekly: 'H 12 * * 0' + schedule-weekly: 'H 23 * * 6' + csit-high-frequency-list: '{csit-high-frequency-list-nitrogen}' + schedule-high-frequency: '' + - carbon: branch: 'stable/carbon' + karaf-version: karaf3 jdk: 'openjdk8' jre: 'openjdk8' - csit-list: '{csit-list-carbon}' + csit-blacklist: longevity gate sanity daexim jsonrpc + csit-list: !include: csit-jobs-carbon.lst csit-sanity-list: '{csit-sanity-list-carbon}' csit-weekly-list: '{csit-weekly-list-carbon}' - schedule-weekly: 'H 12 * * 0' + schedule-weekly: 'H 23 * * 6' + csit-high-frequency-list: '{csit-high-frequency-list-carbon}' + schedule-high-frequency: 'H H/4 * * *' - boron: branch: 'stable/boron' + karaf-version: karaf3 jdk: 'openjdk8' jre: 'openjdk8' - csit-list: '{csit-list-boron}' + csit-blacklist: longevity gate sanity daexim jsonrpc + csit-list: !include: csit-jobs-boron.lst 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}' - csit-sanity-list: '' - csit-weekly-list: '' - schedule-weekly: 'H 12 * * 0' + schedule-weekly: 'H 23 * * 6' + csit-high-frequency-list: '' + schedule-high-frequency: '' # tools system image - tools_system_image: Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300 + tools_system_image: Ubuntu 16.04 - mininet-ovs-25 - 20170808-0158 # Template: integration-csit-verify-1node-library # Goal: Verify changes in csit folder not covered by projects suite verify jobs (e.g. libraries or variables) @@ -81,11 +97,11 @@ refspec: 'refs/heads/{test-branch}' artifacts: '{archive-artifacts}' - integration-distribution-branch: - branch: '{branch}' + branch: '{verify-branch}' - integration-distribution-stream: - stream: '{dist-stream}' - - integration-bundleurl: - bundleurl: '{bundleurl}' + stream: '{verify-stream}' + - integration-bundle-url: + bundle-url: '{bundle-url}' - integration-controller-scope: controller-scope: '{scope}' - integration-controller-features: @@ -101,13 +117,15 @@ - integration-test-options: test-options: '-v TIMEOUT_BUG_4220:10s -v USE_NETCONF_CONNECTOR:True' - integration-stream-test-plan: - stream-test-plan: 'test-libraries-{dist-stream}.txt' + stream-test-plan: 'test-libraries-{verify-stream}.txt' - integration-test-plan: test-plan: 'test-libraries.txt' - integration-patch-refspec: branch: '$GERRIT_REFSPEC' - integration-jdk-version: jdkversion: '{jre}' + - distribution-karaf-version: + karaf-version: '{verify-karaf-version}' scm: - integration-gerrit-scm: @@ -141,9 +159,7 @@ - integration-get-slave-addresses - inject: properties-file: 'slave_addresses.txt' - - integration-get-bundle-vars - - inject: - properties-file: 'bundle_vars.txt' + - integration-detect-variables - integration-deploy-controller-run-test - integration-cleanup-tmp @@ -155,8 +171,7 @@ email-recipients: '{email-recipients}' email-prefix: '[integration]' - integration-csit-archive-build - - opendaylight-infra-shiplogs: - maven-version: 'mvn33' + - lf-infra-publish # Template: integration-distribution-test-{stream} # Goal: Verify a distribution through all system test available @@ -173,17 +188,18 @@ build-days-to-keep: '{build-days-to-keep}' parameters: - - integration-bundleurl: - bundleurl: '{bundleurl}' - - integration-jdk-version: - jdkversion: '{jre}' + - integration-bundle-url: + bundle-url: '{bundle-url}' + - distribution-karaf-version: + karaf-version: '{karaf-version}' builders: - trigger-builds: - project: '{csit-list}' block: true - predefined-parameters: - BUNDLEURL=$BUNDLEURL + predefined-parameters: | + BUNDLE_URL=$BUNDLE_URL + KARAF_VERSION=$KARAF_VERSION publishers: - email-notification: @@ -205,17 +221,18 @@ build-days-to-keep: '{build-days-to-keep}' parameters: - - integration-bundleurl: - bundleurl: '{bundleurl}' - - integration-jdk-version: - jdkversion: '{jre}' + - integration-bundle-url: + bundle-url: '{bundle-url}' + - distribution-karaf-version: + karaf-version: '{karaf-version}' builders: - trigger-builds: - project: '{csit-sanity-list}' block: true - predefined-parameters: - BUNDLEURL=$BUNDLEURL + predefined-parameters: | + BUNDLE_URL=$BUNDLE_URL + KARAF_VERSION=$KARAF_VERSION publishers: - email-notification: @@ -230,9 +247,8 @@ - job-template: name: 'integration-patch-test-{stream}' - project-type: maven + project-type: freestyle node: centos7-java-builder-2c-8g - jdk: '{jdk}' properties: - opendaylight-infra-properties: @@ -244,11 +260,15 @@ project: '$GERRIT_PROJECT' branch: '{branch}' refspec: '$GERRIT_REFSPEC' - artifacts: '{archive-artifacts} **/dependency_tree.txt' + artifacts: '{archive-artifacts}' - integration-distribution-branch: branch: '{branch}' + - distribution-karaf-version: + karaf-version: '{karaf-version}' - integration-distribution-git-url: git-url: '{git-url}' + - maven-exec: + maven-version: mvn33 scm: - integration-gerrit-scm: @@ -280,55 +300,49 @@ unstable: true notbuilt: true - prebuilders: + builders: - integration-rebase-gerrit-patch - - integration-get-bundle-url - - inject: - properties-file: 'bundle.txt' - wipe-org-opendaylight-repo - provide-maven-settings: - global-settings-file: 'odl-global-settings' + global-settings-file: 'global-settings' settings-file: 'integration-settings' - maven-target: maven-version: 'mvn33' pom: '$GERRIT_PROJECT/pom.xml' - goals: > + goals: | clean install dependency:tree -DoutputFile=dependency_tree.txt - -V -B -Pq -Djenkins - -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r + -Pq -Dstream={stream} + {opendaylight-infra-mvn-opts} java-opts: - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' - settings: 'integration-settings' + settings: integration-settings settings-type: cfp - global-settings: 'odl-global-settings' + global-settings: global-settings global-settings-type: cfp - - maven: - maven-name: 'mvn33' - root-pom: 'distribution/pom.xml' - goals: > - clean install dependency:tree -DoutputFile=dependency_tree.txt - -V -B -Djenkins - -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r - maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' - settings: 'integration-settings' - settings-type: cfp - global-settings: 'odl-global-settings' - global-settings-type: cfp - ignore-upstream-changes: true - post-step-run-condition: 'SUCCESS' - - postbuilders: + - maven-target: + maven-version: mvn33 + pom: distribution/pom.xml + goals: | + clean install dependency:tree -DoutputFile=dependency_tree.txt + {opendaylight-infra-mvn-opts} + java-opts: + - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' + settings: integration-settings + settings-type: cfp + global-settings: global-settings + global-settings-type: cfp + - integration-upload-distribution: + dist-pom: distribution/pom.xml - trigger-builds: - project: '{csit-list}' block: true - predefined-parameters: - BUNDLEURL=$BUNDLEURL + predefined-parameters: | + BUNDLE_URL=$BUNDLE_URL + KARAF_VERSION=$KARAF_VERSION publishers: - - opendaylight-infra-shiplogs: - maven-version: 'mvn33' + - lf-infra-publish - email-notification: email-recipients: '{email-recipients}' email-prefix: '[$GERRIT_PROJECT]' @@ -354,12 +368,12 @@ # 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 + # 11. Click Parameters and copy the long value of BUNDLE_URL field to clipboard. + # 12. Run the same csit job woth different patchset or test options, or other csit jobs, with this BUNDLE_URL 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 + project-type: freestyle node: centos7-java-builder-8c-8g jdk: '{jdk}' @@ -374,43 +388,45 @@ run-test: 'false' - integration-distribution-branch: branch: '{branch}' + - distribution-karaf-version: + karaf-version: '{karaf-version}' - opendaylight-infra-parameters: os-cloud: '{os-cloud}' project: 'integration/distribution' branch: '{branch}' refspec: 'refs/heads/{branch}' - artifacts: '{archive-artifacts} **/dependency_tree.txt' - - prebuilders: - - wipe-org-opendaylight-repo - - integration-multipatch-builder - - inject: - properties-file: 'bundle.txt' - - provide-maven-settings: - global-settings-file: 'odl-global-settings' - settings-file: 'yangtools-settings' + artifacts: '{archive-artifacts}' + - maven-exec: + maven-version: mvn33 wrappers: - opendaylight-infra-wrappers: build-timeout: '1200' - maven: - maven-name: 'mvn33' - root-pom: 'patch_tester/pom.xml' - # TODO: Make Maven options configurable. Currently tests are not skipped, everything else is. - goals: > - clean install dependency:tree -DoutputFile=dependency_tree.txt - -f patch_tester/pom.xml -V -B -Pq -Djenkins - -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r - -Dstream={stream} - maven-opts: '-Xmx7168m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' - settings: 'yangtools-settings' - settings-type: cfp - global-settings: 'odl-global-settings' - global-settings-type: cfp - post-step-run-condition: 'SUCCESS' - - postbuilders: + builders: + - wipe-org-opendaylight-repo + - integration-multipatch-builder + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: 'yangtools-settings' + - maven-target: + maven-version: mvn33 + pom: patch_tester/pom.xml + # TODO: Make Maven options configurable. Currently tests are not skipped, everything else is. + goals: | + clean install dependency:tree -DoutputFile=dependency_tree.txt + -Pq + -Dstream={stream} + -Dsft.heap.max=4g + {opendaylight-infra-mvn-opts} + java-opts: + - '-Xmx3072m -Dmaven.compile.fork=true' + settings: integration-settings + settings-type: cfp + global-settings: global-settings + global-settings-type: cfp + - integration-upload-distribution: + dist-pom: patch_tester/distribution/pom.xml - conditional-step: condition-kind: boolean-expression condition-expression: $RUNTEST @@ -418,12 +434,12 @@ - trigger-builds: - project: '{csit-list}' block: true - predefined-parameters: - BUNDLEURL=$BUNDLEURL + predefined-parameters: | + BUNDLE_URL=$BUNDLE_URL + KARAF_VERSION=$KARAF_VERSION publishers: - - opendaylight-infra-shiplogs: - maven-version: 'mvn33' + - lf-infra-publish - email-notification: email-recipients: '{email-recipients}' email-prefix: '[int/dist]' @@ -439,10 +455,10 @@ build-days-to-keep: '{build-days-to-keep}' parameters: - - integration-bundleurl: - bundleurl: '{bundleurl}' - - integration-jdk-version: - jdkversion: '{jre}' + - integration-bundle-url: + bundle-url: '{bundle-url}' + - distribution-karaf-version: + karaf-version: '{karaf-version}' triggers: - timed: '{schedule-weekly}' @@ -451,10 +467,112 @@ - trigger-builds: - project: '{csit-weekly-list}' block: true - predefined-parameters: - BUNDLEURL=$BUNDLEURL + predefined-parameters: | + BUNDLE_URL=$BUNDLE_URL + KARAF_VERSION=$KARAF_VERSION publishers: - email-notification: email-recipients: '{email-recipients}' email-prefix: '[integration]' + +- job-template: + name: 'integration-distribution-high-frequency-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-bundle-url: + bundle-url: '{bundle-url}' + - distribution-karaf-version: + karaf-version: '{karaf-version}' + + triggers: + - timed: '{schedule-high-frequency}' + + builders: + - trigger-builds: + - project: '{csit-high-frequency-list}' + block: true + predefined-parameters: | + BUNDLE_URL=$BUNDLE_URL + KARAF_VERSION=$KARAF_VERSION + + publishers: + - email-notification: + email-recipients: '{email-recipients}' + email-prefix: '[integration]' + +- job-template: + name: 'integration-update-csit-tests-{stream}' + + # This job's purpose is to update csit + # tests to run in integration-distribution-test-{stream} + # by updating integration files: csit-list-carbon.inc, + # csit-list-boron.inc, csit-list-beryllium.inc + # These files can be used as !include in int-dist-test-{stream} + + ###################### + # Default parameters # + ###################### + + git-url: '$GIT_URL/$PROJECT' + submodule-recursive: true + + ##################### + # Job Configuration # + ##################### + + project-type: freestyle + node: centos7-java-builder-2c-4g + + properties: + - lf-infra-properties: + build-days-to-keep: 7 + + parameters: + - lf-infra-parameters: + project: releng/builder # Hardcode as this job needs to pull releng/builder + stream: '{stream}' + branch: master # Hardcode as releng/builder only has master + lftools-version: '{lftools-version}' + - string: + name: CSIT_BLACKLIST + default: '{csit-blacklist}' + description: Space separated list of jobs strings to blacklist. + + scm: + - lf-infra-gerrit-scm: + jenkins-ssh-credential: '{jenkins-ssh-credential}' + git-url: '{git-url}' + refspec: '$GERRIT_REFSPEC' + branch: '$GERRIT_BRANCH' + submodule-recursive: '{submodule-recursive}' + choosing-strategy: default + + wrappers: + - lf-infra-wrappers: + build-timeout: 10 + jenkins-ssh-credential: '{jenkins-ssh-credential}' + + triggers: + - reverse: + jobs: builder-jjb-merge + + builders: + - shell: !include-raw-escape: update-csit-tests.sh + - shell: | + git status + git add jjb/integration/*.lst + - opendaylight-infra-push-gerrit-patch: + project: "releng/builder" + gerrit-topic: "auto-update-csit-jobs-{stream}" + gerrit-commit-message: "Auto Update CSIT Jobs to run for {stream}" + + publishers: + - lf-infra-publish