Use cluster config file in cluster tests
[releng/builder.git] / jjb / integration / integration-templates.yaml
index 7c6a1276d3f6d12fc3d08b70b2382ca304c6a869..e1dde447d86b3a60eaeb3146784e176edf5298d1 100644 (file)
@@ -1,9 +1,5 @@
 # Job templates in this file (please update with every new template):
 #
-# Old templates:
-# {project}-csit-verify-1node-{functionality}-{stream}
-# {project}-csit-1node-imds-{functionality}-{install}-{stream}
-#
 # New (for Be release):
 # {project}-csit-verify-1node-{functionality}
 # {project}-csit-1node-{functionality}-{install}-{stream}
 # Parameters:
 #
 # project-parameter: main project integration/test ($PROJECT)
+# jre: (openjdk7 or openjdk8) Java runtime environment to use when launching ODL
 # integration-branch: distribution branch ($BRANCH)
 # integration-controller-bundleurl: distribution URL ($BUNDLEURL)
 # integration-controller-scope: only or all features ($CONTROLLERSCOPE)
 # integration-controller-features: features under test ($CONTROLLER FEATURES)
 # integration-test-options: robot options ($TESTOPTIONS)
-# integration-test-plan: robot test plan ($TESTPLAN)
+# integration-stream-test-plan: stream specific robot test plan ($STREAMTESTPLAN)
+# integration-test-plan: fallback robot test plan ($TESTPLAN)
 # integration-patch-refspec: test branch ($PATCHREFSPEC)
 
 
-
-# Old templates
-
-- job-template:
-    name: '{project}-csit-verify-1node-{functionality}-{stream}'
-    disabled: false
-
-    project-type: freestyle
-    node: dynamic_robot
-
-    logrotate:
-        daysToKeep: '{build-days-to-keep}'
-        numToKeep: '{build-num-to-keep}'
-        artifactDaysToKeep: '{build-artifact-days-to-keep}'
-        artifactNumToKeep: '{build-num-to-keep}'
-
-    parameters:
-        - project-parameter:
-            project: 'integration/test'
-        - integration-branch:
-            branch: 'master'
-        - integration-bundleurl:
-            bundleurl: 'last'
-        - integration-controller-scope:
-            controller-scope: 'only'
-        - integration-controller-features:
-            controller-features: '{install-features}'
-        - integration-test-options:
-            test-options: '{robot-options}'
-        - integration-test-plan:
-            test-plan: '{project}-{functionality}.txt'
-        - integration-jdk-version:
-            jdkversion: 'openjdk7'
-
-    scm:
-        - integration-gerrit-scm:
-            credentials-id: '{ssh-credentials}'
-            basedir: 'test'
-            refspec: '$GERRIT_REFSPEC'
-            branch: 'master'
-
-    wrappers:
-        - build-timeout
-        - integration-jclouds-controller-mininet:
-            controller-vms: 1
-            mininet-image: '{mininet-image}'
-            mininet-vms: '{mininet-vms}'
-            mininet-cloud-name: '{mininet-cloud-name}'
-        - ssh-agent-credentials:
-            users:
-                - '{ssh-credentials}'
-
-    triggers:
-        - integration-trigger-patch-submitted:
-            name: 'integration/test'
-            branch: '{branch}'
-            pattern: 'csit/suites/{project}/**'
-
-    builders:
-        - integration-cleanup-workspace
-        - integration-install-robotframework
-        - inject:
-            properties-file: 'env.properties'
-        - integration-get-slave-addresses
-        - inject:
-            properties-file: 'slave_addresses.txt'
-        - integration-get-bundle-vars
-        - inject:
-            properties-file: 'bundle_vars.txt'
-        - integration-deploy-controller-run-test
-        - integration-cleanup-tmp
-
-    publishers:
-        - integration-robot:
-            unstable-if: 0.0
-            pass-if: 100.0
-        - archive:
-            artifacts: 'karaf.log*'
-        - email-notification:
-            email-prefix: '[{project}]'
-
-- job-template:
-    name: '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
-    disabled: false
-
-    project-type: freestyle
-    node: dynamic_robot
-
-    logrotate:
-        daysToKeep: '{build-days-to-keep}'
-        numToKeep: '{build-num-to-keep}'
-        artifactDaysToKeep: '{build-artifact-days-to-keep}'
-        artifactNumToKeep: '{build-num-to-keep}'
-
-    parameters:
-        - project-parameter:
-            project: 'integration/test'
-        - integration-branch:
-            branch: '{branch}'
-        - integration-bundleurl:
-            bundleurl: 'last'
-        - integration-controller-scope:
-            controller-scope: '{scope}'
-        - integration-controller-features:
-            controller-features: '{install-features}'
-        - integration-test-options:
-            test-options: '{robot-options}'
-        - integration-test-plan:
-            test-plan: '{project}-{functionality}.txt'
-        - integration-patch-refspec:
-            branch: 'stable/helium'
-        - integration-jdk-version:
-            jdkversion: 'openjdk7'
-
-    scm:
-        - integration-gerrit-scm:
-            credentials-id: '{ssh-credentials}'
-            basedir: 'test'
-            refspec: '$PATCHREFSPEC'
-            branch: 'master'
-
-    wrappers:
-        - build-timeout
-        - integration-jclouds-controller-mininet:
-            controller-vms: 1
-            mininet-image: '{mininet-image}'
-            mininet-vms: '{mininet-vms}'
-            mininet-cloud-name: '{mininet-cloud-name}'
-        - ssh-agent-credentials:
-            users:
-                - '{ssh-credentials}'
-
-
-    triggers:
-        - integration-csit-{install}:
-            jobs: '{trigger-jobs}'
-
-    builders:
-        - integration-cleanup-workspace
-        - integration-install-robotframework
-        - inject:
-            properties-file: 'env.properties'
-        - integration-get-slave-addresses
-        - inject:
-            properties-file: 'slave_addresses.txt'
-        - integration-get-bundle-vars
-        - inject:
-            properties-file: 'bundle_vars.txt'
-        - integration-deploy-controller-run-test
-        - integration-cleanup-tmp
-
-    publishers:
-        - integration-robot:
-            unstable-if: 0.0
-            pass-if: 100.0
-        - archive:
-            artifacts: 'karaf.log*'
-        - email-notification:
-            email-prefix: '[{project}]'
-        - plot:
-          - title: '{01-plot-title}'
-            yaxis: '{01-plot-yaxis}'
-            group: '{01-plot-group}'
-            num-builds: '5400'
-            style: line
-            use-description: false
-            csv-file-name: '{project}-csit-1node-imds-{functionality}-{install}-{stream}-{01-plot-data-file}-history.csv'
-            keep-records: true
-            series:
-              - file: '{01-plot-data-file}'
-                inclusion-flag: 'off'
-                display-table: true
-                format: csv
-          - title: '{02-plot-title}'
-            yaxis: '{02-plot-yaxis}'
-            group: '{02-plot-group}'
-            num-builds: '5400'
-            style: line
-            use-description: false
-            csv-file-name: '{project}-csit-1node-imds-{functionality}-{install}-{stream}-{02-plot-data-file}-history.csv'
-            keep-records: true
-            series:
-              - file: '{02-plot-data-file}'
-                inclusion-flag: 'off'
-                display-table: true
-                format: csv
-
 # New templates
 
 - job-template:
         - project-parameter:
             project: 'integration/test'
         - integration-branch:
-            branch: 'master'
+            branch: 'stable/beryllium'
+        - integration-distribution-stream:
+            stream: 'beryllium'
         - integration-bundleurl:
             bundleurl: 'last'
         - integration-controller-scope:
             controller-features: '{install-features}'
         - integration-test-options:
             test-options: '{robot-options}'
+        - integration-stream-test-plan:
+            stream-test-plan: '{project}-{functionality}-beryllium.txt'
         - integration-test-plan:
             test-plan: '{project}-{functionality}.txt'
         - integration-jdk-version:
             jdkversion: 'openjdk7'
+            # TODO: Switch to openjdk8 from Boron on.
 
     scm:
         - integration-gerrit-scm:
             unstable-if: 0.0
             pass-if: 100.0
         - archive:
-            artifacts: 'karaf.log*'
+            artifacts: '*.log,*.log.xz'
         - email-notification:
             email-prefix: '[{project}]'
 
             project: 'integration/test'
         - integration-branch:
             branch: '{branch}'
+        - integration-distribution-stream:
+            stream: '{stream}'
         - integration-bundleurl:
             bundleurl: 'last'
         - integration-controller-scope:
             controller-features: '{install-features}'
         - integration-test-options:
             test-options: '{robot-options}'
+        - integration-stream-test-plan:
+            stream-test-plan: '{project}-{functionality}-{stream}.txt'
         - integration-test-plan:
             test-plan: '{project}-{functionality}.txt'
         - integration-patch-refspec:
             branch: 'master'
         - integration-jdk-version:
-            jdkversion: 'openjdk7'
+            jdkversion: '{jre}'
 
     scm:
         - integration-gerrit-scm:
             unstable-if: 0.0
             pass-if: 100.0
         - archive:
-            artifacts: 'karaf.log*'
+            artifacts: '*.log,*.log.xz'
         - email-notification:
             email-prefix: '[{project}]'
         - plot:
             project: 'integration/test'
         - integration-branch:
             branch: '{branch}'
+        - integration-distribution-stream:
+            stream: '{stream}'
         - integration-bundleurl:
             bundleurl: 'last'
         - integration-controller-scope:
             controller-features: '{install-features}'
         - integration-test-options:
             test-options: '{robot-options}'
+        - integration-stream-test-plan:
+            stream-test-plan: '{project}-{functionality}-{stream}.txt'
         - integration-test-plan:
             test-plan: '{project}-{functionality}.txt'
         - integration-patch-refspec:
             branch: 'master'
         - integration-jdk-version:
-            jdkversion: 'openjdk7'
+            jdkversion: '{jre}'
 
     scm:
         - integration-gerrit-scm:
             unstable-if: 0.0
             pass-if: 100.0
         - archive:
-            artifacts: '*.log,karaf.log*'
+            artifacts: '*.log,*.log.xz'
         - email-notification:
             email-prefix: '[{project}]'
         - plot:
         - project-parameter:
             project: 'integration/test'
         - integration-branch:
-            branch: 'master'
+            branch: 'stable/beryllium'
+        - integration-distribution-stream:
+            stream: 'beryllium'
         - integration-bundleurl:
             bundleurl: 'last'
         - integration-controller-scope:
             controller-scope: 'only'
         - integration-controller-features:
-            controller-features: 'odl-mdsal-clustering,{install-features}'
+            controller-features: 'odl-jolokia,{install-features}'
         - integration-test-options:
             test-options: '{robot-options}'
+        - integration-stream-test-plan:
+            stream-test-plan: '{project}-{functionality}-beryllium.txt'
         - integration-test-plan:
             test-plan: '{project}-{functionality}.txt'
         - integration-jdk-version:
             jdkversion: 'openjdk7'
+            # TODO: Switch to openjdk8 from Boron on.
 
     scm:
         - integration-gerrit-scm:
         - integration-get-bundle-vars
         - inject:
             properties-file: 'bundle_vars.txt'
-        - integration-deploy-controller
         - integration-configure-clustering
         - integration-start-cluster-run-test
         - integration-cleanup-tmp
             unstable-if: 0.0
             pass-if: 100.0
         - archive:
-            artifacts: '*karaf.log*'
+            artifacts: '*.log,*.log.xz'
         - email-notification:
             email-prefix: '[{project}]'
 
             project: 'integration/test'
         - integration-branch:
             branch: '{branch}'
+        - integration-distribution-stream:
+            stream: '{stream}'
         - integration-bundleurl:
             bundleurl: 'last'
         - integration-controller-scope:
             controller-scope: '{scope}'
         - integration-controller-features:
-            controller-features: 'odl-mdsal-clustering,{install-features}'
+            controller-features: 'odl-jolokia,{install-features}'
         - integration-test-options:
             test-options: '{robot-options}'
+        - integration-stream-test-plan:
+            stream-test-plan: '{project}-{functionality}-{stream}.txt'
         - integration-test-plan:
             test-plan: '{project}-{functionality}.txt'
         - integration-patch-refspec:
             branch: 'master'
         - integration-jdk-version:
-            jdkversion: 'openjdk7'
+            jdkversion: '{jre}'
 
     scm:
         - integration-gerrit-scm:
         - integration-get-bundle-vars
         - inject:
             properties-file: 'bundle_vars.txt'
-        - integration-deploy-controller
         - integration-configure-clustering
         - integration-start-cluster-run-test
         - integration-cleanup-tmp
             unstable-if: 0.0
             pass-if: 100.0
         - archive:
-            artifacts: '*karaf.log*'
+            artifacts: '*.log,*.log.xz'
         - email-notification:
             email-prefix: '[{project}]'
         - plot:
             project: 'integration/test'
         - integration-branch:
             branch: '{branch}'
+        - integration-distribution-stream:
+            stream: '{stream}'
         - integration-bundleurl:
             bundleurl: 'last'
         - integration-controller-scope:
             controller-scope: '{scope}'
         - integration-controller-features:
-            controller-features: 'odl-mdsal-clustering,{install-features}'
+            controller-features: 'odl-jolokia,{install-features}'
         - integration-test-options:
             test-options: '{robot-options}'
+        - integration-stream-test-plan:
+            stream-test-plan: '{project}-{functionality}-{stream}.txt'
         - integration-test-plan:
             test-plan: '{project}-{functionality}.txt'
         - integration-patch-refspec:
             branch: 'master'
         - integration-jdk-version:
-            jdkversion: 'openjdk7'
+            jdkversion: '{jre}'
 
     scm:
         - integration-gerrit-scm:
         - integration-get-bundle-vars
         - inject:
             properties-file: 'bundle_vars.txt'
-        - integration-deploy-controller
         - integration-configure-clustering
         - integration-start-cluster-run-test
         - integration-cleanup-tmp
             unstable-if: 0.0
             pass-if: 100.0
         - archive:
-            artifacts: '*karaf.log*'
+            artifacts: '*.log,*.log.xz'
         - email-notification:
             email-prefix: '[{project}]'
         - plot:
                 inclusion-flag: 'off'
                 display-table: true
                 format: csv
+
+- job-template:
+    name: '{project}-openstack-{functionality}-daily-{openstack}-{odl}'
+
+    project-type: freestyle
+    node: dynamic_robot
+
+    logrotate:
+        daysToKeep: '{build-days-to-keep}'
+        numToKeep: '{build-num-to-keep}'
+        artifactDaysToKeep: '{build-artifact-days-to-keep}'
+        artifactNumToKeep: '{build-num-to-keep}'
+
+    parameters:
+        - project-parameter:
+            project: 'integration/test'
+        - integration-patch-refspec:
+            branch: 'master'
+        - integration-test-plan:
+            test-plan: '{project}-{functionality}.txt'
+        - string:
+            name: OPENSTACK_BRANCH
+            default: '{openstack-branch}'
+            description: 'Openstack branch to use with devstack'
+        - string:
+            name: ODL_VERSION
+            default: '{odl-version}'
+            description: 'OpenDaylight version to use with devstack + networking_odl project'
+        - string:
+            name: TEMPEST_REGEX
+            default: 'tempest.api.network'
+            description: 'Default grouping of tempest tests to run'
+
+    scm:
+        - integration-gerrit-scm:
+            credentials-id: '{ssh-credentials}'
+            basedir: 'test'
+            refspec: '$PATCHREFSPEC'
+            branch: 'master'
+
+    wrappers:
+          - build-timeout
+          - jclouds:
+              instances:
+                - rk-c7-devstack:
+                    cloud-name: 'Rackspace DFW - Devstack'
+                    count: '1'
+                    stop-on-terminate: False
+          - ssh-agent-credentials:
+              users:
+                  - '{ssh-credentials}'
+
+    # Trigger jobs (daily)
+    triggers:
+        - integration-csit-all
+
+    builders:
+        - integration-install-robotframework
+        - inject:
+            properties-file: 'env.properties'
+        - integration-get-slave-addresses
+        - inject:
+            properties-file: 'slave_addresses.txt'
+        - include-raw-integration-deploy-devstack-testing
+        - integration-cleanup-tmp
+
+    publishers:
+        - integration-robot:
+            unstable-if: 0.0
+            pass-if: 100.0
+        - archive:
+            artifacts: 'devstacklog.txt,*karaf*'
+        - email-notification:
+            email-prefix: '[project]'