From 37fc7e318b36b2911172bd39bc96a9b6362793d8 Mon Sep 17 00:00:00 2001
From: TerryHowe <terrylhowe@gmail.com>
Date: Sat, 25 Apr 2015 09:28:22 -0600
Subject: [PATCH] Add OpenStack Python SDK gate

Add a gate to run some basic functional tests for the Python
SDK.

Change-Id: I4feec23f0f711dfe422af47a8e391d5a560e9ea9
---
 jenkins/jobs/projects.yaml | 10 ++++++++++
 jenkins/jobs/sdk.yaml      | 38 ++++++++++++++++++++++++++++++++++++++
 zuul/layout.yaml           |  4 ++++
 3 files changed, 52 insertions(+)
 create mode 100644 jenkins/jobs/sdk.yaml

diff --git a/jenkins/jobs/projects.yaml b/jenkins/jobs/projects.yaml
index eb0d43ab82..aa6b9202e3 100755
--- a/jenkins/jobs/projects.yaml
+++ b/jenkins/jobs/projects.yaml
@@ -4953,6 +4953,16 @@
 
     jobs:
       - python-jobs
+      - '{pipeline}-sdk-dsvm-functional{branch-designator}':
+          pipeline: check
+          node: 'devstack-precise || devstack-trusty'
+          branch-designator: ''
+          branch-override: default
+      - '{pipeline}-sdk-dsvm-functional{branch-designator}':
+          pipeline: gate
+          node: 'devstack-precise || devstack-trusty'
+          branch-designator: ''
+          branch-override: default
       - pypi-jobs
 
 
diff --git a/jenkins/jobs/sdk.yaml b/jenkins/jobs/sdk.yaml
new file mode 100644
index 0000000000..5aca7b30b1
--- /dev/null
+++ b/jenkins/jobs/sdk.yaml
@@ -0,0 +1,38 @@
+- job-template:
+    name: '{pipeline}-sdk-dsvm-functional{branch-designator}'
+    node: '{node}'
+
+    wrappers:
+      - build-timeout:
+          timeout: 125
+      - timestamps
+
+    builders:
+      - link-logs
+      - net-info
+      - devstack-checkout
+      - shell: |
+          #!/bin/bash -xe
+          export PYTHONUNBUFFERED=true
+          export DEVSTACK_GATE_UNSTACK=0
+          export DEVSTACK_GATE_TIMEOUT=120
+          export DEVSTACK_GATE_TEMPEST=0
+          export DEVSTACK_GATE_EXERCISES=0
+          export DEVSTACK_GATE_INSTALL_TESTONLY=1
+          export BRANCH_OVERRIDE={branch-override}
+          if [ "$BRANCH_OVERRIDE" != "default" ] ; then
+              export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
+          fi
+
+          function post_test_hook {{
+              bash -xe $BASE/new/python-openstacksdk/post_test_hook.sh
+          }}
+          export -f post_test_hook
+
+          cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
+          ./safe-devstack-vm-gate-wrap.sh
+
+    publishers:
+      - test-results
+      - devstack-logs
+      - console-log
diff --git a/zuul/layout.yaml b/zuul/layout.yaml
index be97211847..0245121159 100755
--- a/zuul/layout.yaml
+++ b/zuul/layout.yaml
@@ -6543,6 +6543,10 @@ projects:
       - name: check-requirements
       - name: pypy-jobs
       - name: publish-to-pypi
+    check:
+      - check-sdk-dsvm-functional
+    gate:
+      - gate-sdk-dsvm-functional
     post:
       - python-openstacksdk-coverage