Merge "Improve branch cutting scripts"
[releng/builder.git] / jjb / integration / integration-macros.yaml
index 1e9005cd4577218010f5cf60dbd8d771c08ac5ef..8ee7f0b50abb9a60cdf0b9349d5956ecf1e877e4 100644 (file)
                 - compare-type: ANT
                   pattern: '{files}'
 
+# Macro: integration-csit-only
+# Operation: this macro sets a trigger on reverse job list
+# Used by: csit -only- job templates
+
+- trigger:
+    name: integration-csit-trigger
+    triggers:
+      - reverse:
+          jobs: '{jobs}'
+          result: 'success'
+
 # Macro: integration-openstack-controller-mininet
 # Operation: this macro will spin the controller and mininet vms
 # Used by: {project}-csit-* job templates
       - opendaylight-infra-stack:
           stack-template: 'csit-3-instance-type.yaml'
 
+# Macro: integration-infra-stack-4-type
+# Operation: Sets environment and then calls opendaylight-infra-stack to spin
+#            up csit lab using openstack-heat.
+# Used by: {project}-csit-* job templates
+
+- builder:
+    name: integration-infra-stack-4-type
+    builders:
+      - integration-cleanup-workspace
+      - shell: |
+          #!/bin/bash
+          # Setup openstack envirnoment file for use by
+          # the opendaylight-infra-stack macro
+          cat > $WORKSPACE/opendaylight-infra-environment.yaml << EOF
+          parameters:
+              vm_0_count: {vm_0_count}
+              vm_0_flavor: {vm_0_flavor}
+              vm_0_image: {vm_0_image}
+              vm_1_count: {vm_1_count}
+              vm_1_flavor: {vm_1_flavor}
+              vm_1_image: {vm_1_image}
+              vm_2_count: {vm_2_count}
+              vm_2_flavor: {vm_2_flavor}
+              vm_2_image: {vm_2_image}
+              vm_3_count: {vm_3_count}
+              vm_3_flavor: {vm_3_flavor}
+              vm_3_image: {vm_3_image}
+          EOF
+          echo "Contents of opendaylight-infra-environment.yaml ..."
+          cat $WORKSPACE/opendaylight-infra-environment.yaml
+      - opendaylight-infra-stack:
+          stack-template: 'csit-4-instance-type.yaml'
+
 # Macro: integration-get-slave-addresses
 # Operation: this macro gets the IP addresses of the dynamic vms
 # Used by: {project}-csit-* job templates
 - builder:
     name: integration-multipatch-builder
     builders:
-      - shell: !include-raw: include-raw-integration-multipatch-distribution-test.sh
+      - shell: !include-raw: multipatch-distribution.sh
 
 # Macro: integration-cleanup-workspace
 # Operation: Cleans up files possibly left there by the previous build
     builders:
       - config-file-provider:
           files:
-            - file-id: odl-global-settings
+            - file-id: global-settings
               variable: GLOBAL_SETTINGS_FILE
             - file-id: integration-settings
               variable: SETTINGS_FILE
           script-only-if-succeeded: 'False'
           script-only-if-failed: 'False'
           mark-unstable-if-failed: 'True'
+
+- publisher:
+    name: integration-csit-run-postscript
+    publishers:
+      - postbuildscript:
+          builders:
+            - config-file-provider:
+                files:
+                  - file-id: 'odl-elastic-cloud'
+                    target: '${HOME}/.netrc'
+            - shell: |
+                #!/bin/bash
+                #The following script runs any configurable postplan stored in test/csit/postplans.
+                if [ -f "${WORKSPACE}/test/csit/postplans/${TESTPLAN}" ]; then
+                    echo "postplan exists!!!"
+                    echo "Changing the postplan path..."
+                    script_name=${WORKSPACE}/test/csit/postplans/${TESTPLAN}
+                    cat ${script_name} | sed "s:integration:${WORKSPACE}:" > postplan.txt
+                    cat postplan.txt
+                    egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' postplan.txt | while read -r line ; do
+                        echo "Executing ${line}..."
+                        ${line}
+                    done
+                fi
+                rm ${HOME}/.netrc
+          script-only-if-succeeded: 'False'
+          script-only-if-failed: 'False'
+          mark-unstable-if-failed: 'True'