Merge "CentOS: Fix EPEL mirroring and RDO install on CI nodes"
diff --git a/.zuul.yaml b/.zuul.yaml
index 037e9a9..f03d30a 100644
--- a/.zuul.yaml
+++ b/.zuul.yaml
@@ -46,7 +46,7 @@
- zuul: openstack-infra/openstack-zuul-jobs
timeout: 7200
vars:
- test_matrix_configs: ['neutron', 'tlsproxy']
+ test_matrix_configs: [neutron, tlsproxy]
devstack_localrc:
DATABASE_PASSWORD: secretdatabase
RABBIT_PASSWORD: secretrabbit
@@ -77,6 +77,40 @@
devstack_services:
horizon: false
tempest: false
+ zuul_copy_output:
+ '{{ devstack_conf_dir }}/local.conf': 'logs'
+ '{{ devstack_conf_dir }}/localrc': 'logs'
+ '{{ devstack_conf_dir }}/.stackenv': 'logs'
+ '{{ devstack_log_dir }}/dstat-csv.log': 'logs'
+ '{{ devstack_log_dir }}/devstacklog.txt': 'logs'
+ '{{ devstack_log_dir }}/devstacklog.txt.summary': 'logs'
+ '{{ devstack_full_log}}': 'logs'
+ '{{ stage_dir }}/verify_tempest_conf.log': 'logs'
+ '{{ stage_dir }}/apache': 'logs'
+ '{{ stage_dir }}/apache_config': 'logs'
+ '{{ stage_dir }}/etc': 'logs'
+ '/var/log/rabbitmq': 'logs'
+ '/var/log/postgresql': 'logs'
+ '/var/log/mysql.err': 'logs'
+ '/var/log/mysql.log': 'logs'
+ '/var/log/libvirt': 'logs'
+ '/etc/sudoers': 'logs'
+ '/etc/sudoers.d': 'logs'
+ '{{ stage_dir }}/iptables.txt': 'logs'
+ '{{ stage_dir }}/df.txt': 'logs'
+ '{{ stage_dir }}/pip2-freeze.txt': 'logs'
+ '{{ stage_dir }}/pip3-freeze.txt': 'logs'
+ '{{ stage_dir }}/dpkg-l.txt': 'logs'
+ '{{ stage_dir }}/rpm-qa.txt': 'logs'
+ '{{ stage_dir }}/core': 'logs'
+ '{{ stage_dir }}/listen53.txt': 'logs'
+ '{{ stage_dir }}/deprecations.log': 'logs'
+ '/var/log/ceph': 'logs'
+ '/var/log/openvswitch': 'logs'
+ '/var/log/glusterfs': 'logs'
+ '/etc/glusterfs/glusterd.vol': 'logs'
+ '/etc/resolv.conf': 'logs'
+ '/var/log/unbound.log': 'logs'
pre-run: playbooks/pre.yaml
run: playbooks/devstack.yaml
post-run: playbooks/post.yaml
@@ -154,7 +188,6 @@
run: playbooks/tox/run.yaml
- project:
- name: openstack-dev/devstack
check:
jobs:
- devstack
diff --git a/doc/source/configuration.rst b/doc/source/configuration.rst
index d932d8c..49cad05 100644
--- a/doc/source/configuration.rst
+++ b/doc/source/configuration.rst
@@ -667,7 +667,7 @@
VOLUME_GROUP_NAME="stack-volumes"
VOLUME_NAME_PREFIX="volume-"
- VOLUME_BACKING_FILE_SIZE=10250M
+ VOLUME_BACKING_FILE_SIZE=24G
Keystone
diff --git a/doc/source/plugin-registry.rst b/doc/source/plugin-registry.rst
index 907671a..d830507 100644
--- a/doc/source/plugin-registry.rst
+++ b/doc/source/plugin-registry.rst
@@ -33,7 +33,6 @@
broadview-collector `git://git.openstack.org/openstack/broadview-collector <https://git.openstack.org/cgit/openstack/broadview-collector>`__
ceilometer `git://git.openstack.org/openstack/ceilometer <https://git.openstack.org/cgit/openstack/ceilometer>`__
ceilometer-powervm `git://git.openstack.org/openstack/ceilometer-powervm <https://git.openstack.org/cgit/openstack/ceilometer-powervm>`__
-cerberus `git://git.openstack.org/openstack/cerberus <https://git.openstack.org/cgit/openstack/cerberus>`__
cloudkitty `git://git.openstack.org/openstack/cloudkitty <https://git.openstack.org/cgit/openstack/cloudkitty>`__
collectd-ceilometer-plugin `git://git.openstack.org/openstack/collectd-ceilometer-plugin <https://git.openstack.org/cgit/openstack/collectd-ceilometer-plugin>`__
congress `git://git.openstack.org/openstack/congress <https://git.openstack.org/cgit/openstack/congress>`__
@@ -79,6 +78,7 @@
kingbird `git://git.openstack.org/openstack/kingbird <https://git.openstack.org/cgit/openstack/kingbird>`__
kuryr-kubernetes `git://git.openstack.org/openstack/kuryr-kubernetes <https://git.openstack.org/cgit/openstack/kuryr-kubernetes>`__
kuryr-libnetwork `git://git.openstack.org/openstack/kuryr-libnetwork <https://git.openstack.org/cgit/openstack/kuryr-libnetwork>`__
+kuryr-tempest-plugin `git://git.openstack.org/openstack/kuryr-tempest-plugin <https://git.openstack.org/cgit/openstack/kuryr-tempest-plugin>`__
magnum `git://git.openstack.org/openstack/magnum <https://git.openstack.org/cgit/openstack/magnum>`__
magnum-ui `git://git.openstack.org/openstack/magnum-ui <https://git.openstack.org/cgit/openstack/magnum-ui>`__
manila `git://git.openstack.org/openstack/manila <https://git.openstack.org/cgit/openstack/manila>`__
@@ -95,6 +95,7 @@
monasca-ceilometer `git://git.openstack.org/openstack/monasca-ceilometer <https://git.openstack.org/cgit/openstack/monasca-ceilometer>`__
monasca-events-api `git://git.openstack.org/openstack/monasca-events-api <https://git.openstack.org/cgit/openstack/monasca-events-api>`__
monasca-log-api `git://git.openstack.org/openstack/monasca-log-api <https://git.openstack.org/cgit/openstack/monasca-log-api>`__
+monasca-tempest-plugin `git://git.openstack.org/openstack/monasca-tempest-plugin <https://git.openstack.org/cgit/openstack/monasca-tempest-plugin>`__
monasca-transform `git://git.openstack.org/openstack/monasca-transform <https://git.openstack.org/cgit/openstack/monasca-transform>`__
murano `git://git.openstack.org/openstack/murano <https://git.openstack.org/cgit/openstack/murano>`__
networking-6wind `git://git.openstack.org/openstack/networking-6wind <https://git.openstack.org/cgit/openstack/networking-6wind>`__
@@ -130,6 +131,7 @@
networking-vpp `git://git.openstack.org/openstack/networking-vpp <https://git.openstack.org/cgit/openstack/networking-vpp>`__
networking-vsphere `git://git.openstack.org/openstack/networking-vsphere <https://git.openstack.org/cgit/openstack/networking-vsphere>`__
neutron `git://git.openstack.org/openstack/neutron <https://git.openstack.org/cgit/openstack/neutron>`__
+neutron-classifier `git://git.openstack.org/openstack/neutron-classifier <https://git.openstack.org/cgit/openstack/neutron-classifier>`__
neutron-dynamic-routing `git://git.openstack.org/openstack/neutron-dynamic-routing <https://git.openstack.org/cgit/openstack/neutron-dynamic-routing>`__
neutron-fwaas `git://git.openstack.org/openstack/neutron-fwaas <https://git.openstack.org/cgit/openstack/neutron-fwaas>`__
neutron-fwaas-dashboard `git://git.openstack.org/openstack/neutron-fwaas-dashboard <https://git.openstack.org/cgit/openstack/neutron-fwaas-dashboard>`__
@@ -167,6 +169,7 @@
tacker `git://git.openstack.org/openstack/tacker <https://git.openstack.org/cgit/openstack/tacker>`__
tap-as-a-service `git://git.openstack.org/openstack/tap-as-a-service <https://git.openstack.org/cgit/openstack/tap-as-a-service>`__
tap-as-a-service-dashboard `git://git.openstack.org/openstack/tap-as-a-service-dashboard <https://git.openstack.org/cgit/openstack/tap-as-a-service-dashboard>`__
+telemetry-tempest-plugin `git://git.openstack.org/openstack/telemetry-tempest-plugin <https://git.openstack.org/cgit/openstack/telemetry-tempest-plugin>`__
tricircle `git://git.openstack.org/openstack/tricircle <https://git.openstack.org/cgit/openstack/tricircle>`__
trio2o `git://git.openstack.org/openstack/trio2o <https://git.openstack.org/cgit/openstack/trio2o>`__
trove `git://git.openstack.org/openstack/trove <https://git.openstack.org/cgit/openstack/trove>`__
@@ -174,6 +177,7 @@
valet `git://git.openstack.org/openstack/valet <https://git.openstack.org/cgit/openstack/valet>`__
vitrage `git://git.openstack.org/openstack/vitrage <https://git.openstack.org/cgit/openstack/vitrage>`__
vitrage-dashboard `git://git.openstack.org/openstack/vitrage-dashboard <https://git.openstack.org/cgit/openstack/vitrage-dashboard>`__
+vitrage-tempest-plugin `git://git.openstack.org/openstack/vitrage-tempest-plugin <https://git.openstack.org/cgit/openstack/vitrage-tempest-plugin>`__
vmware-nsx `git://git.openstack.org/openstack/vmware-nsx <https://git.openstack.org/cgit/openstack/vmware-nsx>`__
vmware-vspc `git://git.openstack.org/openstack/vmware-vspc <https://git.openstack.org/cgit/openstack/vmware-vspc>`__
watcher `git://git.openstack.org/openstack/watcher <https://git.openstack.org/cgit/openstack/watcher>`__
diff --git a/files/debs/general b/files/debs/general
index 8e0018d..df872a0 100644
--- a/files/debs/general
+++ b/files/debs/general
@@ -15,6 +15,7 @@
libffi-dev # for pyOpenSSL
libjpeg-dev # Pillow 3.0.0
libmysqlclient-dev # MySQL-python
+libpcre3-dev # for python-pcre
libpq-dev # psycopg2
libssl-dev # for pyOpenSSL
libsystemd-dev # for systemd-python
diff --git a/files/debs/horizon b/files/debs/horizon
index 1f45b54..4833289 100644
--- a/files/debs/horizon
+++ b/files/debs/horizon
@@ -1,3 +1,2 @@
apache2 # NOPRIME
libapache2-mod-wsgi # NOPRIME
-libpcre3-dev # pyScss
diff --git a/files/rpms/general b/files/rpms/general
index 878b935..5d9a4ad 100644
--- a/files/rpms/general
+++ b/files/rpms/general
@@ -22,6 +22,7 @@
openssh-server
openssl
openssl-devel # to rebuild pyOpenSSL if needed
+pcre-devel # for python-pcre
pkgconfig
postgresql-devel # psycopg2
psmisc
diff --git a/files/rpms/horizon b/files/rpms/horizon
index aeb2cb5..fa5601a 100644
--- a/files/rpms/horizon
+++ b/files/rpms/horizon
@@ -1,5 +1,4 @@
Django
httpd # NOPRIME
mod_wsgi # NOPRIME
-pcre-devel # pyScss
pyxattr
diff --git a/functions b/functions
index 20b83b3..959133c 100644
--- a/functions
+++ b/functions
@@ -503,13 +503,13 @@
function get_instance_ip {
local vm_id=$1
local network_name=$2
- local nova_result
+ local addresses
local ip
- nova_result="$(nova show $vm_id)"
- ip=$(echo "$nova_result" | grep "$network_name" | get_field 2)
+ addresses=$(openstack server show -c addresses -f value "$vm_id")
+ ip=$(echo $addresses | sed -n "s/^.*$network_name=\([0-9\.]*\).*$/\1/p")
if [[ $ip = "" ]];then
- echo "$nova_result"
+ echo "addresses of server $vm_id : $addresses"
die $LINENO "[Fail] Couldn't get ipaddress of VM"
fi
echo $ip
diff --git a/inc/python b/inc/python
index 2e4eff0..e074ea4 100644
--- a/inc/python
+++ b/inc/python
@@ -49,7 +49,11 @@
fi
$xtrace
- if is_fedora || is_suse; then
+ if python3_enabled && [ "$os_VENDOR" = "Fedora" -a $os_RELEASE -gt 26 ]; then
+ # Default Python 3 install prefix changed to /usr/local in Fedora 27:
+ # https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe
+ echo "/usr/local/bin"
+ elif is_fedora || is_suse; then
echo "/usr/bin"
else
echo "/usr/local/bin"
diff --git a/lib/cinder b/lib/cinder
index 655908c..96a7d5b 100644
--- a/lib/cinder
+++ b/lib/cinder
@@ -343,9 +343,16 @@
create_service_user "cinder"
+ # block-storage is the official service type
+ get_or_create_service "cinder" "block-storage" "Cinder Volume Service"
get_or_create_service "cinder" "volume" "Cinder Volume Service"
if [ "$CINDER_USE_MOD_WSGI" == "False" ]; then
get_or_create_endpoint \
+ "block-storage" \
+ "$REGION_NAME" \
+ "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/"
+
+ get_or_create_endpoint \
"volume" \
"$REGION_NAME" \
"$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v1/\$(project_id)s"
@@ -363,6 +370,11 @@
"$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST:$CINDER_SERVICE_PORT/v3/\$(project_id)s"
else
get_or_create_endpoint \
+ "block-storage" \
+ "$REGION_NAME" \
+ "$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST/"
+
+ get_or_create_endpoint \
"volume" \
"$REGION_NAME" \
"$CINDER_SERVICE_PROTOCOL://$CINDER_SERVICE_HOST/volume/v1/\$(project_id)s"
diff --git a/lib/glance b/lib/glance
index ad286ba..95d2450 100644
--- a/lib/glance
+++ b/lib/glance
@@ -56,6 +56,7 @@
GLANCE_POLICY_JSON=$GLANCE_CONF_DIR/policy.json
GLANCE_SCHEMA_JSON=$GLANCE_CONF_DIR/schema-image.json
GLANCE_SWIFT_STORE_CONF=$GLANCE_CONF_DIR/glance-swift-store.conf
+GLANCE_IMAGE_IMPORT_CONF=$GLANCE_CONF_DIR/glance-image-import.conf
GLANCE_V1_ENABLED=${GLANCE_V1_ENABLED:-False}
if is_service_enabled tls-proxy; then
@@ -232,6 +233,11 @@
# Store specific confs
iniset $GLANCE_CACHE_CONF glance_store filesystem_store_datadir $GLANCE_IMAGE_DIR/
+ # Set default configuration options for the glance-image-import
+ iniset $GLANCE_IMAGE_IMPORT_CONF image_import_opts image_import_plugins []
+ iniset $GLANCE_IMAGE_IMPORT_CONF inject_metadata_properties ignore_user_roles admin
+ iniset $GLANCE_IMAGE_IMPORT_CONF inject_metadata_properties inject
+
cp -p $GLANCE_DIR/etc/policy.json $GLANCE_POLICY_JSON
cp -p $GLANCE_DIR/etc/schema-image.json $GLANCE_SCHEMA_JSON
diff --git a/lib/neutron_plugins/services/l3 b/lib/neutron_plugins/services/l3
index 98315b7..41a467d 100644
--- a/lib/neutron_plugins/services/l3
+++ b/lib/neutron_plugins/services/l3
@@ -188,7 +188,7 @@
if [ -z $SUBNETPOOL_V4_ID ]; then
fixed_range_v4=$FIXED_RANGE
fi
- SUBNET_ID=$(openstack --os-cloud devstack-admin --os-region "$REGION_NAME" subnet create --project $project_id --ip-version 4 ${ALLOCATION_POOL:+--allocation-pool $ALLOCATION_POOL} $PROVIDER_SUBNET_NAME --gateway $NETWORK_GATEWAY ${SUBNETPOOL_V4_ID:+--subnet-pool $SUBNETPOOL_V4_ID} --network $NET_ID --subnet-range $fixed_range_v4 | grep ' id ' | get_field 2)
+ SUBNET_ID=$(openstack --os-cloud devstack-admin --os-region "$REGION_NAME" subnet create --project $project_id --ip-version 4 ${ALLOCATION_POOL:+--allocation-pool $ALLOCATION_POOL} $PROVIDER_SUBNET_NAME --gateway $NETWORK_GATEWAY ${SUBNETPOOL_V4_ID:+--subnet-pool $SUBNETPOOL_V4_ID} --network $NET_ID ${fixed_range_v4:+--subnet-range $fixed_range_v4} | grep ' id ' | get_field 2)
die_if_not_set $LINENO SUBNET_ID "Failure creating SUBNET_ID for $PROVIDER_SUBNET_NAME $project_id"
fi
@@ -198,7 +198,7 @@
if [ -z $SUBNETPOOL_V6_ID ]; then
fixed_range_v6=$IPV6_PROVIDER_FIXED_RANGE
fi
- IPV6_SUBNET_ID=$(openstack --os-cloud devstack-admin --os-region "$REGION_NAME" subnet create --project $project_id --ip-version 6 --gateway $IPV6_PROVIDER_NETWORK_GATEWAY $IPV6_PROVIDER_SUBNET_NAME ${SUBNETPOOL_V6_ID:+--subnet-pool $SUBNETPOOL_V6_ID} --network $NET_ID --subnet-range $fixed_range_v6 | grep ' id ' | get_field 2)
+ IPV6_SUBNET_ID=$(openstack --os-cloud devstack-admin --os-region "$REGION_NAME" subnet create --project $project_id --ip-version 6 --gateway $IPV6_PROVIDER_NETWORK_GATEWAY $IPV6_PROVIDER_SUBNET_NAME ${SUBNETPOOL_V6_ID:+--subnet-pool $SUBNETPOOL_V6_ID} --network $NET_ID ${fixed_range_v6:+--subnet-range $fixed_range_v6} | grep ' id ' | get_field 2)
die_if_not_set $LINENO IPV6_SUBNET_ID "Failure creating IPV6_SUBNET_ID for $IPV6_PROVIDER_SUBNET_NAME $project_id"
fi
diff --git a/lib/nova b/lib/nova
index c40c43a..fea2b85 100644
--- a/lib/nova
+++ b/lib/nova
@@ -544,7 +544,6 @@
iniset $NOVA_CONF oslo_messaging_notifications driver "messagingv2"
iniset $NOVA_CONF oslo_messaging_notifications transport_url $(get_notification_url)
iniset_rpc_backend nova $NOVA_CONF
- iniset $NOVA_CONF glance api_servers "$GLANCE_URL"
iniset $NOVA_CONF DEFAULT osapi_compute_workers "$API_WORKERS"
iniset $NOVA_CONF DEFAULT metadata_workers "$API_WORKERS"
diff --git a/lib/tempest b/lib/tempest
index bdbaaa5..3b39dae 100644
--- a/lib/tempest
+++ b/lib/tempest
@@ -310,7 +310,6 @@
fi
# Image Features
- iniset $TEMPEST_CONFIG image-feature-enabled deactivate_image True
if [ "$GLANCE_V1_ENABLED" != "True" ]; then
iniset $TEMPEST_CONFIG image-feature-enabled api_v1 False
fi
@@ -383,6 +382,10 @@
fi
fi
+ if [[ $ENABLE_VOLUME_MULTIATTACH == "True" ]]; then
+ iniset $TEMPEST_CONFIG compute-feature-enabled volume_multiattach True
+ fi
+
if is_service_enabled n-novnc; then
iniset $TEMPEST_CONFIG compute-feature-enabled vnc_console True
fi
diff --git a/playbooks/post.yaml b/playbooks/post.yaml
index 0c5e83b..d8ee99e 100644
--- a/playbooks/post.yaml
+++ b/playbooks/post.yaml
@@ -24,40 +24,6 @@
# capture-system-logs should be the last role before stage-output
- capture-system-logs
- role: stage-output
- zuul_copy_output:
- { '{{ devstack_conf_dir }}/local.conf': 'logs',
- '{{ devstack_conf_dir }}/localrc': 'logs',
- '{{ devstack_conf_dir }}/.stackenv': 'logs' ,
- '{{ devstack_log_dir }}/dstat-csv.log': 'logs',
- '{{ devstack_log_dir }}/devstacklog.txt': 'logs',
- '{{ devstack_log_dir }}/devstacklog.txt.summary': 'logs',
- '{{ devstack_full_log}}': 'logs',
- '{{ stage_dir }}/verify_tempest_conf.log': 'logs',
- '{{ stage_dir }}/apache': 'logs',
- '{{ stage_dir }}/apache_config': 'logs',
- '{{ stage_dir }}/etc': 'logs',
- '/var/log/rabbitmq': 'logs',
- '/var/log/postgresql': 'logs',
- '/var/log/mysql.err': 'logs',
- '/var/log/mysql.log': 'logs',
- '/var/log/libvirt': 'logs',
- '/etc/sudoers': 'logs',
- '/etc/sudoers.d': 'logs',
- '{{ stage_dir }}/iptables.txt': 'logs',
- '{{ stage_dir }}/df.txt': 'logs',
- '{{ stage_dir }}/pip2-freeze.txt': 'logs',
- '{{ stage_dir }}/pip3-freeze.txt': 'logs',
- '{{ stage_dir }}/dpkg-l.txt': 'logs',
- '{{ stage_dir }}/rpm-qa.txt': 'logs',
- '{{ stage_dir }}/core': 'logs',
- '{{ stage_dir }}/listen53.txt': 'logs',
- '{{ stage_dir }}/deprecations.log': 'logs',
- '/var/log/ceph': 'logs',
- '/var/log/openvswitch': 'logs',
- '/var/log/glusterfs': 'logs',
- '/etc/glusterfs/glusterd.vol': 'logs',
- '/etc/resolv.conf': 'logs',
- '/var/log/unbound.log': 'logs' }
extensions_to_txt:
- conf
- log
diff --git a/playbooks/pre.yaml b/playbooks/pre.yaml
index d61fd45..6681fb2 100644
--- a/playbooks/pre.yaml
+++ b/playbooks/pre.yaml
@@ -18,15 +18,3 @@
- setup-devstack-cache
- start-fresh-logging
- write-devstack-local-conf
- # TODO(jeblair): remove when configure-mirrors is fixed
- tasks:
- - name: Hack mirror_info
- shell:
- _raw_params: |
- mkdir /etc/ci
- cat << "EOF" > /etc/ci/mirror_info.sh
- export NODEPOOL_UCA_MIRROR=http://mirror.dfw.rax.openstack.org/ubuntu-cloud-archive
- EOF
- args:
- executable: /bin/bash
- become: true
diff --git a/playbooks/tox/post.yaml b/playbooks/tox/post.yaml
index d9e299f..7f0cb19 100644
--- a/playbooks/tox/post.yaml
+++ b/playbooks/tox/post.yaml
@@ -1,5 +1,4 @@
- hosts: all
roles:
- fetch-tox-output
- - fetch-testr-output
- - fetch-stestr-output
+ - fetch-subunit-output
diff --git a/stackrc b/stackrc
index 286a04d..7ed8a67 100644
--- a/stackrc
+++ b/stackrc
@@ -601,6 +601,11 @@
SPICE_REPO=${SPICE_REPO:-http://anongit.freedesktop.org/git/spice/spice-html5.git}
SPICE_BRANCH=${SPICE_BRANCH:-master}
+# Global flag used to configure Tempest and potentially other services if
+# volume multiattach is supported. In Queens, only the libvirt compute driver
+# and lvm volume driver support multiattach, and qemu must be less than 2.10
+# or libvirt must be greater than or equal to 3.10.
+ENABLE_VOLUME_MULTIATTACH=$(trueorfalse False ENABLE_VOLUME_MULTIATTACH)
# Nova hypervisor configuration. We default to libvirt with **kvm** but will
# drop back to **qemu** if we are unable to load the kvm module. ``stack.sh`` can
@@ -612,7 +617,12 @@
case "$VIRT_DRIVER" in
ironic|libvirt)
LIBVIRT_TYPE=${LIBVIRT_TYPE:-kvm}
- if [[ "$os_VENDOR" =~ (Debian|Ubuntu) ]]; then
+ # If ENABLE_VOLUME_MULTIATTACH is True, the Ubuntu Cloud Archive can't
+ # be used until it provides libvirt>=3.10, and with older versions of
+ # Ubuntu the group is "libvirtd".
+ # TODO(mriedem): Remove the ENABLE_VOLUME_MULTIATTACH check when
+ # UCA has libvirt>=3.10.
+ if [[ "$os_VENDOR" =~ (Debian|Ubuntu) && "${ENABLE_VOLUME_MULTIATTACH}" == "False" ]]; then
# The groups change with newer libvirt. Older Ubuntu used
# 'libvirtd', but now uses libvirt like Debian. Do a quick check
# to see if libvirtd group already exists to handle grenade's case.
@@ -720,11 +730,11 @@
# etcd3 defaults
ETCD_VERSION=${ETCD_VERSION:-v3.1.10}
-ETCD_SHA256_AMD64="2d335f298619c6fb02b1124773a56966e448ad9952b26fea52909da4fe80d2be"
+ETCD_SHA256_AMD64=${ETCD_SHA256_AMD64:-"2d335f298619c6fb02b1124773a56966e448ad9952b26fea52909da4fe80d2be"}
# NOTE(sdague): etcd v3.1.10 doesn't have anything for these architectures, though 3.2.x does.
-ETCD_SHA256_ARM64=""
-ETCD_SHA256_PPC64=""
-ETCD_SHA256_S390X=""
+ETCD_SHA256_ARM64=${ETCD_SHA256_ARM64:-""}
+ETCD_SHA256_PPC64=${ETCD_SHA256_PPC64:-""}
+ETCD_SHA256_S390X=${ETCD_SHA256_S390X:-""}
# Make sure etcd3 downloads the correct architecture
if is_arch "x86_64"; then
ETCD_ARCH="amd64"
@@ -762,8 +772,8 @@
fi
done
-# 10Gb default volume backing file size
-VOLUME_BACKING_FILE_SIZE=${VOLUME_BACKING_FILE_SIZE:-10250M}
+# 24Gb default volume backing file size
+VOLUME_BACKING_FILE_SIZE=${VOLUME_BACKING_FILE_SIZE:-24G}
# Prefixes for volume and instance names
VOLUME_NAME_PREFIX=${VOLUME_NAME_PREFIX:-volume-}
diff --git a/tools/fixup_stuff.sh b/tools/fixup_stuff.sh
index efe0125..f78f05f 100755
--- a/tools/fixup_stuff.sh
+++ b/tools/fixup_stuff.sh
@@ -75,7 +75,12 @@
# Make it possible to switch this based on an environment variable as
# libvirt 2.5.0 doesn't handle nested virtualization quite well and this
# is required for the trove development environment.
-if [[ "${ENABLE_UBUNTU_CLOUD_ARCHIVE}" == "True" && "$DISTRO" = "xenial" ]]; then
+# The Pike UCA has qemu 2.10 but libvirt 3.6, therefore if
+# ENABLE_VOLUME_MULTIATTACH is True, we can't use the Pike UCA
+# because multiattach won't work with those package versions.
+# We can remove this check when the UCA has libvirt>=3.10.
+if [[ "${ENABLE_UBUNTU_CLOUD_ARCHIVE}" == "True" && "$DISTRO" = "xenial" && \
+ "${ENABLE_VOLUME_MULTIATTACH}" == "False" ]]; then
# This pulls in apt-add-repository
install_package "software-properties-common"
# Use UCA for newer libvirt. Should give us libvirt 2.5.0.