summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLingxian Kong <anlin.kong@gmail.com>2020-03-12 11:33:50 +1300
committerLingxian Kong <anlin.kong@gmail.com>2020-03-16 11:10:05 +1300
commitc952838a9bbd8a5e67d64dc3271501341fdd2394 (patch)
tree99bbc7a1b345c33ca4ae59c8dd080f626fbff40d
parent7d78c74158408ca7ddfc30d6d6b4af7f7ec17a95 (diff)
downloadtrove-c952838a9bbd8a5e67d64dc3271501341fdd2394.tar.gz
Support to test non-dev guest image in CI
Make the job non-voting because it may fail when the guest agent code changes. Change-Id: Ibd595b5b5c02cf72f1e5f05c79469cd4cb15a3ca
-rw-r--r--.zuul.yaml14
-rw-r--r--devstack/plugin.sh29
-rw-r--r--devstack/settings1
3 files changed, 34 insertions, 10 deletions
diff --git a/.zuul.yaml b/.zuul.yaml
index 6ead5b36..2d2e175c 100644
--- a/.zuul.yaml
+++ b/.zuul.yaml
@@ -27,6 +27,8 @@
voting: false
- trove-tempest-ipv6-only:
voting: false
+ - trove-functional-mysql-nondev:
+ voting: false
gate:
queue: trove
jobs:
@@ -145,6 +147,18 @@
trove_test_datastore_version: '5.7'
- job:
+ name: trove-functional-mysql-nondev
+ parent: trove-devstack-base
+ vars:
+ devstack_localrc:
+ TROVE_RESIZE_TIME_OUT: 1800
+ TROVE_NON_DEV_IMAGE_URL_MYSQL: https://tarballs.opendev.org/openstack/trove/images/trove-master-mysql-ubuntu-xenial.qcow2
+ trove_resize_time_out: 1800
+ trove_test_datastore: 'mysql'
+ trove_test_group: 'mysql'
+ trove_test_datastore_version: '5.7'
+
+- job:
name: trove-grenade
parent: trove-legacy-dsvm-base
run: playbooks/legacy/grenade-dsvm-trove/run.yaml
diff --git a/devstack/plugin.sh b/devstack/plugin.sh
index ecd861de..39f34b63 100644
--- a/devstack/plugin.sh
+++ b/devstack/plugin.sh
@@ -447,20 +447,29 @@ function create_guest_image {
return 0
fi
- echo "Starting to create guest image..."
-
- TROVE_BRANCH=${TROVE_BRANCH} $DEST/trove/integration/scripts/trovestack \
- build-image \
- ${TROVE_DATASTORE_TYPE} \
- ${TROVE_IMAGE_OS} \
- ${TROVE_IMAGE_OS_RELEASE} \
- true
-
image_name="trove-datastore-${TROVE_IMAGE_OS}-${TROVE_IMAGE_OS_RELEASE}-${TROVE_DATASTORE_TYPE}"
+ image_url_var="TROVE_NON_DEV_IMAGE_URL_${TROVE_DATASTORE_TYPE^^}"
+ image_url=`eval echo '$'"$image_url_var"`
+ mkdir -p $HOME/images
image_file=$HOME/images/${image_name}.qcow2
+
+ if [[ -n ${image_url} ]]; then
+ echo "Downloading guest image from ${image_url}"
+ curl -sSL ${image_url} -o ${image_file}
+ else
+ echo "Starting to create guest image"
+
+ TROVE_BRANCH=${TROVE_BRANCH} $DEST/trove/integration/scripts/trovestack \
+ build-image \
+ ${TROVE_DATASTORE_TYPE} \
+ ${TROVE_IMAGE_OS} \
+ ${TROVE_IMAGE_OS_RELEASE} \
+ true
+ fi
+
if [ ! -f ${image_file} ]; then
echo "Image file was not found at ${image_file}"
- return 1
+ exit 1
fi
echo "Add the image to glance"
diff --git a/devstack/settings b/devstack/settings
index 23d69a43..44b71bb6 100644
--- a/devstack/settings
+++ b/devstack/settings
@@ -90,3 +90,4 @@ CELLSV2_SETUP=singleconductor
# Enable or disable the Trove guest image build during devstack installation.
TROVE_ENABLE_IMAGE_BUILD=${TROVE_ENABLE_IMAGE_BUILD:-"true"}
+TROVE_NON_DEV_IMAGE_URL_MYSQL=${TROVE_NON_DEV_IMAGE_URL_MYSQL:-""}