From ef595fcfc4b42d2a7baeeddee9b804541b81637f Mon Sep 17 00:00:00 2001
From: Monty Taylor <mordred@inaugust.com>
Date: Sun, 22 Oct 2017 16:11:39 +0200
Subject: [PATCH] Add wrapper around ostestr

The functional tests assume that an openrc file has been sourced. Make a
simple wrapper that will do that.

Change-Id: I42584aaebcbca99a8c922f6ff90c8bbce57bbfbb
---
 openstackclient/tests/functional/run_ostestr.sh | 16 ++++++++++++++++
 tox.ini                                         |  4 ++++
 2 files changed, 20 insertions(+)
 create mode 100755 openstackclient/tests/functional/run_ostestr.sh

diff --git a/openstackclient/tests/functional/run_ostestr.sh b/openstackclient/tests/functional/run_ostestr.sh
new file mode 100755
index 0000000000..a6adad965c
--- /dev/null
+++ b/openstackclient/tests/functional/run_ostestr.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+# This is a script that runs ostestr with the openrc OS_ variables sourced.
+# Do not run this script unless you know what you're doing.
+# For more information refer to:
+# https://docs.openstack.org/python-openstackclient/latest/
+
+# Source environment variables to kick things off
+if [ -f ~stack/devstack/openrc ] ; then
+    source ~stack/devstack/openrc admin admin
+fi
+
+echo 'Running tests with:'
+env | grep OS
+
+ostestr $*
diff --git a/tox.ini b/tox.ini
index 3c1b3c387a..a16f0eb849 100644
--- a/tox.ini
+++ b/tox.ini
@@ -56,6 +56,10 @@ commands =
 [testenv:functional]
 setenv = OS_TEST_PATH=./openstackclient/tests/functional
 passenv = OS_*
+# Enable this when running Zuul v3 jobs
+#whitelist_externals = openstackclient/tests/functional/run_ostestr.sh
+#commands =
+#    {toxinidir}/openstackclient/tests/functional/run_ostestr.sh {posargs}
 
 [testenv:functional-tips]
 setenv = OS_TEST_PATH=./openstackclient/tests/functional