trove/devstack/settings
Andreas Jaeger 7b3483723a Fix Trove CI jobs
Changes to get jobs working

1) After [1] devstack no longer changes the ownership of the whole
   /opt/stack tree to the stack user unconditionally. Switch to the
   stack user when running integration test.

2) Add bindep.txt file[2]. The default fallback file is not installed
   anymore and therefore a bindep.txt file is needed to add install
   additional packages.

3) Use trovestack script rather than devstack to build image so many
   global variables could be used for consistency. By default, devstack
   won't build image.

4) Remove the tools/test-setup.sh as it is not used any more.

5) Instance upgrade test keeps failing in CI for some reason, although
   it's always passed on my local environment. In order not to block
   other patches, skip the instance upgrade tests temporarily.

[1] https://review.opendev.org/203698
[2] http://lists.openstack.org/pipermail/openstack-discuss/2019-June/006888.html

Change-Id: I35e17afb9e827b1fead9d28dbf32f11ce4034a9b
2019-08-14 21:20:34 +12:00

89 lines
4.0 KiB
Plaintext

# Settings needed for Trove plugin
# --------------------------------
# Set up default directories
TROVE_DIR=${TROVE_DIR:-${DEST}/trove}
TROVE_REPO=${TROVE_REPO:-${GIT_BASE}/openstack/trove.git}
TROVE_BRANCH=${TROVE_BRANCH:-master}
TROVE_CLIENT_DIR=${TROVE_CLIENT_DIR:-${TROVECLIENT_DIR:-${DEST}/python-troveclient}}
TROVE_CLIENT_REPO=${TROVE_CLIENT_REPO:-${TROVECLIENT_REPO:-${GIT_BASE}/openstack/python-troveclient.git}}
TROVE_CLIENT_BRANCH=${TROVE_CLIENT_BRANCH:-${TROVECLIENT_BRANCH:-master}}
TROVE_DASHBOARD_DIR=${TROVE_DASHBOARD_DIR:-${DEST}/trove-dashboard}
TROVE_DASHBOARD_REPO=${TROVE_DASHBOARD_REPO:-${GIT_BASE}/openstack/trove-dashboard.git}
TROVE_DASHBOARD_BRANCH=${TROVE_DASHBOARD_BRANCH:-master}
TRIPLEO_IMAGES_DIR=${TRIPLEO_IMAGES_DIR:-${DEST}/tripleo-image-elements}
TRIPLEO_IMAGES_REPO=${TRIPLEO_IMAGES_REPO:-${GIT_BASE}/openstack/tripleo-image-elements.git}
TRIPLEO_IMAGES_BRANCH=${TRIPLEO_IMAGES_BRANCH:-master}
# Set up configuration directory and files
TROVE_CONF_DIR=${TROVE_CONF_DIR:-/etc/trove}
TROVE_CONF=${TROVE_CONF:-${TROVE_CONF_DIR}/trove.conf}
TROVE_TASKMANAGER_CONF=${TROVE_TASKMANAGER_CONF:-${TROVE_CONF_DIR}/trove-taskmanager.conf}
TROVE_CONDUCTOR_CONF=${TROVE_CONDUCTOR_CONF:-${TROVE_CONF_DIR}/trove-conductor.conf}
TROVE_GUESTAGENT_CONF=${TROVE_GUESTAGENT_CONF:-${TROVE_CONF_DIR}/trove-guestagent.conf}
TROVE_API_PASTE_INI=${TROVE_API_PASTE_INI:-${TROVE_CONF_DIR}/api-paste.ini}
TROVE_LOCAL_CONF_DIR=${TROVE_LOCAL_CONF_DIR:-${TROVE_DIR}/etc/trove}
TROVE_LOCAL_API_PASTE_INI=${TROVE_LOCAL_API_PASTE_INI:-${TROVE_LOCAL_CONF_DIR}/api-paste.ini}
TROVE_LOCAL_POLICY_JSON=${TROVE_LOCAL_POLICY_JSON:-${TROVE_LOCAL_CONF_DIR}/policy.json}
TROVE_DATASTORE_TYPE=${TROVE_DATASTORE_TYPE:-"mysql"}
if [[ "$DISTRO" == "xenial" || "$DISTRO" == "bionic" ]]; then
TROVE_DATASTORE_VERSION=${TROVE_DATASTORE_VERSION:-"5.7"}
TROVE_DATASTORE_PACKAGE=${TROVE_DATASTORE_PACKAGE:-"mysql-server-5.7"}
else
TROVE_DATASTORE_VERSION=${TROVE_DATASTORE_VERSION:-"5.6"}
TROVE_DATASTORE_PACKAGE=${TROVE_DATASTORE_PACKAGE:-"mysql-server-5.6"}
fi
# Configuration values listed here for reference
TROVE_MAX_ACCEPTED_VOLUME_SIZE=${TROVE_MAX_ACCEPTED_VOLUME_SIZE}
TROVE_MAX_INSTANCES_PER_TENANT=${TROVE_MAX_INSTANCES_PER_TENANT}
TROVE_MAX_VOLUMES_PER_TENANT=${TROVE_MAX_VOLUMES_PER_TENANT}
TROVE_AGENT_CALL_LOW_TIMEOUT=${TROVE_AGENT_CALL_LOW_TIMEOUT}
TROVE_AGENT_CALL_HIGH_TIMEOUT=${TROVE_AGENT_CALL_HIGH_TIMEOUT:-1200}
TROVE_RESIZE_TIME_OUT=${TROVE_RESIZE_TIME_OUT}
TROVE_USAGE_TIMEOUT=${TROVE_USAGE_TIMEOUT:-900}
TROVE_STATE_CHANGE_WAIT_TIME=${TROVE_STATE_CHANGE_WAIT_TIME}
TROVE_COMMAND_PROCESS_TIMEOUT=${TROVE_COMMAND_PROCESS_TIMEOUT:-60}
# Set up the host gateway
if is_service_enabled neutron; then
TROVE_HOST_GATEWAY=${PUBLIC_NETWORK_GATEWAY:-172.24.4.1}
TROVE_MGMT_NETWORK_NAME=${TROVE_MGMT_NETWORK_NAME:-"trove-mgmt"}
TROVE_MGMT_SUBNET_NAME=${TROVE_MGMT_SUBNET_NAME:-${TROVE_MGMT_NETWORK_NAME}-subnet}
TROVE_MGMT_SUBNET_RANGE=${TROVE_MGMT_SUBNET_RANGE:-"192.168.254.0/24"}
else
TROVE_HOST_GATEWAY=${NETWORK_GATEWAY:-10.0.0.1}
fi
TROVE_SHARE_NETWORKS=$(trueorfalse TRUE TROVE_SHARE_NETWORKS)
# Support entry points installation of console scripts
if [[ -d $TROVE_DIR/bin ]]; then
TROVE_BIN_DIR=$TROVE_DIR/bin
else
TROVE_BIN_DIR=$(get_python_exec_prefix)
fi
TROVE_MANAGE=$TROVE_BIN_DIR/trove-manage
# By default enable Trove API behind mod-wsgi. Change this to FALSE
# if you don't want Apache/mod-wsgi
TROVE_USE_MOD_WSGI=$(trueorfalse TRUE TROVE_USE_MOD_WSGI)
TROVE_SERVICE_PORT=${TROVE_SERVICE_PORT:-8779}
TROVE_DEVSTACK_DIR=${TROVE_DIR}/devstack
TROVE_DEVSTACK_FILES=${TROVE_DEVSTACK_DIR}/files
TROVE_WSGI_DIR=${TROVE_WSGI_DIR:-/var/www/trove}
enable_service trove tr-api tr-tmgr tr-cond
# Trove CI tests server group anti-affinity policies and therefore needs
# Nova to use a single MQ for the computes to talk to the scheduler.
CELLSV2_SETUP=singleconductor
# Trove image configuration, by default we don't build image.
TROVE_DISABLE_IMAGE_SETUP=${TROVE_DISABLE_IMAGE_SETUP:-"true"}