Merge "create iruya stable branch for Yardstick"
[releng.git] / jjb / airship / airship.yaml
index 3112e94..0767159 100644 (file)
           name: slave
           default: '{slave}'
 
+- parameter:
+    name: airship-build_tag
+    parameters:
+      - random-string:
+          name: build_tag
+
+- parameter:
+    name: airship-DEBUG
+    parameters:
+      - string:
+          name: DEBUG
+          default: 'true'
+
+- parameter:
+    name: airship-EXTERNAL_NETWORK
+    parameters:
+      - string:
+          name: EXTERNAL_NETWORK
+          default: public
+
 - airship-containers: &airship-containers
     name: 'airship-containers'
     repo: '{repo}'
@@ -50,7 +70,7 @@
     name: airship-run-containers
     builders:
       - shell: |
-          set +ex
+          set +x
           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
           if [ "{repo}" = "_" ]; then
             image={container}:{functest_tag}
             image={repo}:{port}/{container}:{functest_tag}
           fi
           sudo docker run --rm \
+            -e S3_ENDPOINT_URL=https://storage.googleapis.com \
+            -e S3_DST_URL=s3://artifacts.opnfv.org/airship/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
+            -e HTTP_DST_URL=http://artifacts.opnfv.org/airship/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
-            -e NODE_NAME=intel-pod17 \
+            -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
+            -e NODE_NAME=$slave \
             -e INSTALLER_TYPE=airship \
+            -e BUILD_TAG=$BUILD_TAG \
             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
-            -e DEBUG=True \
-            -e EXTERNAL_NETWORK=public \
+            -v /home/opnfv/functest/.boto:/root/.boto \
+            -e DEBUG=$DEBUG \
+            -e EXTERNAL_NETWORK=$EXTERNAL_NETWORK \
+            -e DEPLOY_SCENARIO=os-nosdn-nofeature-ha \
             -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
             -v /home/opnfv/functest/images:/home/opnfv/functest/images \
             -v /home/opnfv/functest/tempest_conf.yaml:/usr/lib/python2.7/\
           site-packages/functest/opnfv_tests/openstack/tempest/custom_tests/tempest_conf.yaml \
-            $image run_tests -t {test} -r
-          res=$?
-          gsutil -m cp -r $WORKSPACE/ \
-            gs://artifacts.opnfv.org/airship/$JOB_NAME-$BUILD_ID > /dev/null 2>&1
-          find $WORKSPACE -type f \
-            -printf \
-            "http://artifacts.opnfv.org/airship/$JOB_NAME-$BUILD_ID/%P\n"
-          exit $res
+            -v /home/opnfv/functest/blacklist.yaml:/usr/lib/python2.7/\
+          site-packages/functest/opnfv_tests/openstack/rally/blacklist.yaml \
+            $image run_tests -t {test} -r -p
 
 - builder:
     name: airship-remove-images
       - shell: |
           set +x
           export TERM_OPTS=" "
-          sudo -H -E -u ubuntu bash -c 'tools/deploy.sh deploy_site'
+          sudo -H -E -u ubuntu bash -c 'tools/deploy.sh $slave deploy_site'
 
 - scm:
     name: airship-scm
     parameters:
       - airship-slave:
           slave: '{slave}'
+      - airship-build_tag:
+          build_tag: ''
+      - airship-DEBUG:
+          DEBUG: 'true'
+      - airship-EXTERNAL_NETWORK:
+          EXTERNAL_NETWORK: public
     builders:
       - airship-run-containers:
           <<: *airship-run-containers
     container: 'functest-smoke'
     test:
       - neutron-tempest-plugin-api
+      - tempest_cinder
+      - tempest_keystone
       - rally_sanity
       - refstack_defcore
       - tempest_full
       - tempest_scenario
+      - tempest_slow
       - patrole
       - neutron_trunk
       - networking-bgpvpn
     jobs:
       - 'airship-{repo}-{container}-{tag}-{test}-run'
 
+- builder:
+    name: airship-zip
+    builders:
+      - shell: |
+          set +x
+          [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
+          if [ "{repo}" = "_" ]; then
+            image={container}:{functest_tag}
+          elif [ "{port}" = "None" ]; then
+            image={repo}/{container}:{functest_tag}
+          else
+            image={repo}:{port}/{container}:{functest_tag}
+          fi
+          sudo docker run --rm \
+            -e S3_ENDPOINT_URL=https://storage.googleapis.com \
+            -e S3_DST_URL=s3://artifacts.opnfv.org/airship \
+            -e HTTP_DST_URL=http://artifacts.opnfv.org/airship/ \
+            -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
+            -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
+            -e BUILD_TAG=$BUILD_TAG \
+            -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
+            -v /home/opnfv/functest/.boto:/root/.boto \
+            $image zip_campaign
+
+- job-template:
+    name: 'airship-{tag}-zip'
+    parameters:
+      - airship-build_tag:
+          build_tag: ''
+    builders:
+      - airship-zip:
+          <<: *airship-containers
+
+- project:
+    name: 'airship-{tag}-zip'
+    <<: *airship-params
+    container: 'functest-healthcheck'
+    jobs:
+      - 'airship-{tag}-zip'
+
 - job-template:
     name: 'airship-{tag}-daily'
     project-type: multijob
     parameters:
       - airship-slave:
           slave: '{slave}'
+      - airship-build_tag:
+          build_tag: ''
       - airship-branch:
           branch: 'master'
+      - airship-DEBUG:
+          DEBUG: 'true'
+      - airship-EXTERNAL_NETWORK:
+          EXTERNAL_NETWORK: public
     properties:
       - build-blocker:
           use-build-blocker: true
       - multijob:
           name: deploy
           projects:
-            - name: 'airship-deploy-daily-latest'
+            - name: 'airship-deploy-daily-{tag}'
               <<: *airship-jobs
       - multijob:
           name: remove former images
           projects:
             - name: 'airship-opnfv-functest-smoke-{tag}-neutron-tempest-plugin-api-run'
               <<: *airship-jobs
+            - name: 'airship-opnfv-functest-smoke-{tag}-neutron-tempest_cinder-run'
+              <<: *airship-jobs
+            - name: 'airship-opnfv-functest-smoke-{tag}-neutron-tempest_keystone-run'
+              <<: *airship-jobs
             - name: 'airship-opnfv-functest-smoke-{tag}-rally_sanity-run'
               <<: *airship-jobs
             - name: 'airship-opnfv-functest-smoke-{tag}-refstack_defcore-run'
               <<: *airship-jobs
             - name: 'airship-opnfv-functest-smoke-{tag}-tempest_scenario-run'
               <<: *airship-jobs
+            - name: 'airship-opnfv-functest-smoke-{tag}-tempest_slow-run'
+              <<: *airship-jobs
             - name: 'airship-opnfv-functest-smoke-{tag}-patrole-run'
               <<: *airship-jobs
             - name: 'airship-opnfv-functest-smoke-{tag}-neutron_trunk-run'
               <<: *airship-jobs
             - name: 'airship-opnfv-functest-vnf-{tag}-juju_epc-run'
               <<: *airship-jobs
+      - multijob:
+          name: dump all campaign data
+          projects:
+            - name: 'airship-{tag}-zip'
+              <<: *airship-jobs
 
 - trigger:
     name: airship-patchset-created
     parameters:
       - airship-slave:
           slave: '{slave}'
+      - airship-build_tag:
+          build_tag: ''
+      - airship-DEBUG:
+          DEBUG: 'true'
+      - airship-EXTERNAL_NETWORK:
+          EXTERNAL_NETWORK: public
     properties:
       - build-blocker:
           use-build-blocker: true
       - multijob:
           name: deploy
           projects:
-            - name: 'airship-deploy-gate-latest'
+            - name: 'airship-deploy-gate-{tag}'
               <<: *airship-jobs
       - multijob:
           name: remove former images
               <<: *airship-jobs
       - multijob:
           name: opnfv/functest-healthcheck:{functest_tag}
-          condition: ALWAYS
           projects:
             - name: 'airship-opnfv-functest-healthcheck-{tag}-connection_check-run'
               <<: *airship-jobs
               <<: *airship-jobs
       - multijob:
           name: opnfv/functest-smoke:{functest_tag}
-          condition: ALWAYS
           projects:
             - name: 'airship-opnfv-functest-smoke-{tag}-tempest_scenario-run'
               <<: *airship-jobs
               <<: *airship-jobs
       - multijob:
           name: opnfv/functest-benchmarking:{functest_tag}
-          condition: ALWAYS
           projects:
             - name: 'airship-opnfv-functest-benchmarking-{tag}-vmtp-run'
               <<: *airship-jobs
+            - name: 'airship-opnfv-functest-benchmarking-{tag}-shaker-run'
+              <<: *airship-jobs
+      - multijob:
+          name: opnfv/functest-vnf:{functest_tag}
+          condition: ALWAYS
+          execution-type: SEQUENTIALLY
+          projects:
+            - name: 'airship-opnfv-functest-vnf-{tag}-cloudify-run'
+              <<: *airship-jobs
+            - name: 'airship-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
+              <<: *airship-jobs
+            - name: 'airship-opnfv-functest-vnf-{tag}-juju_epc-run'
+              <<: *airship-jobs
 
 - project:
     name: 'airship'