Add yoga bundles and release-tool syncs
* charm-helpers sync for classic charms * sync from release-tools * switch to release-specific zosci functional tests * run focal-ussuri as smoke tests * remove trusty, xenial, and groovy metadata/tests * drop py35 and add py39 Change-Id: Id5a191694d70ef745bd41206eaa2222c95f48dfe
This commit is contained in:
parent
6fb737c1c8
commit
641b7f311b
@ -1413,7 +1413,8 @@ def incomplete_relation_data(configs, required_interfaces):
|
|||||||
for i in incomplete_relations}
|
for i in incomplete_relations}
|
||||||
|
|
||||||
|
|
||||||
def do_action_openstack_upgrade(package, upgrade_callback, configs):
|
def do_action_openstack_upgrade(package, upgrade_callback, configs,
|
||||||
|
force_upgrade=False):
|
||||||
"""Perform action-managed OpenStack upgrade.
|
"""Perform action-managed OpenStack upgrade.
|
||||||
|
|
||||||
Upgrades packages to the configured openstack-origin version and sets
|
Upgrades packages to the configured openstack-origin version and sets
|
||||||
@ -1427,12 +1428,13 @@ def do_action_openstack_upgrade(package, upgrade_callback, configs):
|
|||||||
@param package: package name for determining if upgrade available
|
@param package: package name for determining if upgrade available
|
||||||
@param upgrade_callback: function callback to charm's upgrade function
|
@param upgrade_callback: function callback to charm's upgrade function
|
||||||
@param configs: templating object derived from OSConfigRenderer class
|
@param configs: templating object derived from OSConfigRenderer class
|
||||||
|
@param force_upgrade: perform dist-upgrade regardless of new openstack
|
||||||
|
|
||||||
@return: True if upgrade successful; False if upgrade failed or skipped
|
@return: True if upgrade successful; False if upgrade failed or skipped
|
||||||
"""
|
"""
|
||||||
ret = False
|
ret = False
|
||||||
|
|
||||||
if openstack_upgrade_available(package):
|
if openstack_upgrade_available(package) or force_upgrade:
|
||||||
if config('action-managed-upgrade'):
|
if config('action-managed-upgrade'):
|
||||||
juju_log('Upgrading OpenStack release')
|
juju_log('Upgrading OpenStack release')
|
||||||
|
|
||||||
@ -2599,6 +2601,23 @@ def get_subordinate_release_packages(os_release, package_type='deb'):
|
|||||||
return SubordinatePackages(install, purge)
|
return SubordinatePackages(install, purge)
|
||||||
|
|
||||||
|
|
||||||
|
def get_subordinate_services():
|
||||||
|
"""Iterate over subordinate relations and get service information.
|
||||||
|
|
||||||
|
In a similar fashion as with get_subordinate_release_packages(),
|
||||||
|
principle charms can retrieve a list of services advertised by their
|
||||||
|
subordinate charms. This is useful to know about subordinate services when
|
||||||
|
pausing, resuming or upgrading a principle unit.
|
||||||
|
|
||||||
|
:returns: Name of all services advertised by all subordinates
|
||||||
|
:rtype: Set[str]
|
||||||
|
"""
|
||||||
|
services = set()
|
||||||
|
for rdata in container_scoped_relation_get('services'):
|
||||||
|
services |= set(json.loads(rdata or '[]'))
|
||||||
|
return services
|
||||||
|
|
||||||
|
|
||||||
os_restart_on_change = partial(
|
os_restart_on_change = partial(
|
||||||
pausable_restart_on_change,
|
pausable_restart_on_change,
|
||||||
can_restart_now_f=deferred_events.check_and_record_restart_request,
|
can_restart_now_f=deferred_events.check_and_record_restart_request,
|
||||||
|
@ -294,7 +294,6 @@ class BasePool(object):
|
|||||||
# NOTE: Do not perform initialization steps that require live data from
|
# NOTE: Do not perform initialization steps that require live data from
|
||||||
# a running cluster here. The *Pool classes may be used for validation.
|
# a running cluster here. The *Pool classes may be used for validation.
|
||||||
self.service = service
|
self.service = service
|
||||||
self.nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
|
|
||||||
self.op = op or {}
|
self.op = op or {}
|
||||||
|
|
||||||
if op:
|
if op:
|
||||||
@ -341,7 +340,8 @@ class BasePool(object):
|
|||||||
Do not add calls for a specific pool type here, those should go into
|
Do not add calls for a specific pool type here, those should go into
|
||||||
one of the pool specific classes.
|
one of the pool specific classes.
|
||||||
"""
|
"""
|
||||||
if self.nautilus_or_later:
|
nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
|
||||||
|
if nautilus_or_later:
|
||||||
# Ensure we set the expected pool ratio
|
# Ensure we set the expected pool ratio
|
||||||
update_pool(
|
update_pool(
|
||||||
client=self.service,
|
client=self.service,
|
||||||
@ -660,8 +660,9 @@ class ReplicatedPool(BasePool):
|
|||||||
else:
|
else:
|
||||||
self.pg_num = self.get_pgs(self.replicas, self.percent_data)
|
self.pg_num = self.get_pgs(self.replicas, self.percent_data)
|
||||||
|
|
||||||
|
nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
|
||||||
# Create it
|
# Create it
|
||||||
if self.nautilus_or_later:
|
if nautilus_or_later:
|
||||||
cmd = [
|
cmd = [
|
||||||
'ceph', '--id', self.service, 'osd', 'pool', 'create',
|
'ceph', '--id', self.service, 'osd', 'pool', 'create',
|
||||||
'--pg-num-min={}'.format(
|
'--pg-num-min={}'.format(
|
||||||
@ -745,9 +746,9 @@ class ErasurePool(BasePool):
|
|||||||
k = int(erasure_profile['k'])
|
k = int(erasure_profile['k'])
|
||||||
m = int(erasure_profile['m'])
|
m = int(erasure_profile['m'])
|
||||||
pgs = self.get_pgs(k + m, self.percent_data)
|
pgs = self.get_pgs(k + m, self.percent_data)
|
||||||
self.nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
|
nautilus_or_later = cmp_pkgrevno('ceph-common', '14.2.0') >= 0
|
||||||
# Create it
|
# Create it
|
||||||
if self.nautilus_or_later:
|
if nautilus_or_later:
|
||||||
cmd = [
|
cmd = [
|
||||||
'ceph', '--id', self.service, 'osd', 'pool', 'create',
|
'ceph', '--id', self.service, 'osd', 'pool', 'create',
|
||||||
'--pg-num-min={}'.format(
|
'--pg-num-min={}'.format(
|
||||||
|
@ -29,6 +29,7 @@ UBUNTU_RELEASES = (
|
|||||||
'groovy',
|
'groovy',
|
||||||
'hirsute',
|
'hirsute',
|
||||||
'impish',
|
'impish',
|
||||||
|
'jammy',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -275,6 +275,7 @@ UBUNTU_OPENSTACK_RELEASE = OrderedDict([
|
|||||||
('groovy', 'victoria'),
|
('groovy', 'victoria'),
|
||||||
('hirsute', 'wallaby'),
|
('hirsute', 'wallaby'),
|
||||||
('impish', 'xena'),
|
('impish', 'xena'),
|
||||||
|
('jammy', 'yoga'),
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
@ -17,7 +17,6 @@ description: |
|
|||||||
tags:
|
tags:
|
||||||
- openstack
|
- openstack
|
||||||
series:
|
series:
|
||||||
- xenial
|
|
||||||
- bionic
|
- bionic
|
||||||
- focal
|
- focal
|
||||||
- groovy
|
- groovy
|
||||||
|
25
osci.yaml
25
osci.yaml
@ -1,27 +1,28 @@
|
|||||||
- project:
|
- project:
|
||||||
templates:
|
templates:
|
||||||
- charm-unit-jobs
|
- charm-yoga-unit-jobs
|
||||||
check:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
# Made non-voting as test occasionally hangs: lp#1936379
|
|
||||||
- xenial-mitaka_ovs:
|
|
||||||
voting: false
|
|
||||||
- bionic-queens-dvr-snat
|
- bionic-queens-dvr-snat
|
||||||
- bionic-stein-dvr-snat
|
- bionic-stein-dvr-snat
|
||||||
- bionic-train-dvr-snat
|
- bionic-train-dvr-snat
|
||||||
- bionic-ussuri-dvr-snat
|
- bionic-ussuri-dvr-snat
|
||||||
- migrate-ovn-focal-ussuri-dvr-snat
|
- migrate-ovn-focal-ussuri-dvr-snat
|
||||||
- migrate-ovn-focal-victoria-dvr-snat
|
- migrate-ovn-focal-victoria-dvr-snat
|
||||||
|
# migrate-ovn tests fail on wallaby and above due to:
|
||||||
|
# https://bugs.launchpad.net/charm-neutron-openvswitch/+bug/1951856
|
||||||
- migrate-ovn-focal-wallaby-dvr-snat:
|
- migrate-ovn-focal-wallaby-dvr-snat:
|
||||||
voting: false
|
voting: false
|
||||||
- migrate-ovn-focal-xena-dvr-snat:
|
- migrate-ovn-focal-xena-dvr-snat:
|
||||||
voting: false
|
voting: false
|
||||||
- migrate-ovn-groovy-victoria-dvr-snat:
|
- migrate-ovn-focal-yoga-dvr-snat:
|
||||||
voting: false
|
voting: false
|
||||||
- migrate-ovn-hirsute-wallaby-dvr-snat:
|
- migrate-ovn-hirsute-wallaby-dvr-snat:
|
||||||
voting: false
|
voting: false
|
||||||
- migrate-ovn-impish-xena-dvr-snat:
|
- migrate-ovn-impish-xena-dvr-snat:
|
||||||
voting: false
|
voting: false
|
||||||
|
- migrate-ovn-jammy-yoga-dvr-snat:
|
||||||
|
voting: false
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: bionic-queens-dvr-snat
|
name: bionic-queens-dvr-snat
|
||||||
@ -53,10 +54,9 @@
|
|||||||
parent: func-target
|
parent: func-target
|
||||||
dependencies:
|
dependencies:
|
||||||
- osci-lint
|
- osci-lint
|
||||||
- tox-py35
|
|
||||||
- tox-py36
|
- tox-py36
|
||||||
- tox-py37
|
|
||||||
- tox-py38
|
- tox-py38
|
||||||
|
- tox-py39
|
||||||
vars:
|
vars:
|
||||||
tox_extra_args: migrate-ovn:focal-ussuri-dvr-snat
|
tox_extra_args: migrate-ovn:focal-ussuri-dvr-snat
|
||||||
- job:
|
- job:
|
||||||
@ -78,11 +78,11 @@
|
|||||||
vars:
|
vars:
|
||||||
tox_extra_args: migrate-ovn:focal-xena-dvr-snat
|
tox_extra_args: migrate-ovn:focal-xena-dvr-snat
|
||||||
- job:
|
- job:
|
||||||
name: migrate-ovn-groovy-victoria-dvr-snat
|
name: migrate-ovn-focal-yoga-dvr-snat
|
||||||
parent: func-target
|
parent: func-target
|
||||||
dependencies: *smoke-jobs
|
dependencies: *smoke-jobs
|
||||||
vars:
|
vars:
|
||||||
tox_extra_args: migrate-ovn:groovy-victoria-dvr-snat
|
tox_extra_args: migrate-ovn:focal-yoga-dvr-snat
|
||||||
- job:
|
- job:
|
||||||
name: migrate-ovn-hirsute-wallaby-dvr-snat
|
name: migrate-ovn-hirsute-wallaby-dvr-snat
|
||||||
parent: func-target
|
parent: func-target
|
||||||
@ -95,8 +95,9 @@
|
|||||||
dependencies: *smoke-jobs
|
dependencies: *smoke-jobs
|
||||||
vars:
|
vars:
|
||||||
tox_extra_args: migrate-ovn:impish-xena-dvr-snat
|
tox_extra_args: migrate-ovn:impish-xena-dvr-snat
|
||||||
# Redefining these here to override their dependencies
|
|
||||||
- job:
|
- job:
|
||||||
name: xenial-mitaka_ovs
|
name: migrate-ovn-jammy-yoga-dvr-snat
|
||||||
|
parent: func-target
|
||||||
dependencies: *smoke-jobs
|
dependencies: *smoke-jobs
|
||||||
parent: xenial-mitaka
|
vars:
|
||||||
|
tox_extra_args: migrate-ovn:jammy-yoga-dvr-snat
|
||||||
|
@ -7,6 +7,8 @@
|
|||||||
# requirements. They are intertwined. Also, Zaza itself should specify
|
# requirements. They are intertwined. Also, Zaza itself should specify
|
||||||
# all of its own requirements and if it doesn't, fix it there.
|
# all of its own requirements and if it doesn't, fix it there.
|
||||||
#
|
#
|
||||||
|
pyparsing<3.0.0 # aodhclient is pinned in zaza and needs pyparsing < 3.0.0, but cffi also needs it, so pin here.
|
||||||
|
cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35.
|
||||||
setuptools<50.0.0 # https://github.com/pypa/setuptools/commit/04e3df22df840c6bb244e9b27bc56750c44b7c85
|
setuptools<50.0.0 # https://github.com/pypa/setuptools/commit/04e3df22df840c6bb244e9b27bc56750c44b7c85
|
||||||
|
|
||||||
requests>=2.18.4
|
requests>=2.18.4
|
||||||
|
204
tests/bundles/focal-yoga-dvr-snat.yaml
Normal file
204
tests/bundles/focal-yoga-dvr-snat.yaml
Normal file
@ -0,0 +1,204 @@
|
|||||||
|
variables:
|
||||||
|
openstack-origin: &openstack-origin cloud:focal-yoga
|
||||||
|
|
||||||
|
series: &series focal
|
||||||
|
|
||||||
|
machines:
|
||||||
|
0:
|
||||||
|
constraints: "mem=3072M"
|
||||||
|
1:
|
||||||
|
constraints: "mem=3072M"
|
||||||
|
2:
|
||||||
|
constraints: "mem=3072M"
|
||||||
|
3: {}
|
||||||
|
4: {}
|
||||||
|
5: {}
|
||||||
|
6: {}
|
||||||
|
7: {}
|
||||||
|
8:
|
||||||
|
constraints: "root-disk=20G mem=4G"
|
||||||
|
9:
|
||||||
|
constraints: "root-disk=20G mem=4G"
|
||||||
|
10: {}
|
||||||
|
11: {}
|
||||||
|
12: {}
|
||||||
|
|
||||||
|
# We specify machine placements for these to improve iteration
|
||||||
|
# time, given that machine "0" comes up way before machine "7"
|
||||||
|
applications:
|
||||||
|
keystone-mysql-router:
|
||||||
|
charm: cs:~openstack-charmers-next/mysql-router
|
||||||
|
nova-mysql-router:
|
||||||
|
charm: cs:~openstack-charmers-next/mysql-router
|
||||||
|
glance-mysql-router:
|
||||||
|
charm: cs:~openstack-charmers-next/mysql-router
|
||||||
|
neutron-mysql-router:
|
||||||
|
charm: cs:~openstack-charmers-next/mysql-router
|
||||||
|
placement-mysql-router:
|
||||||
|
charm: cs:~openstack-charmers-next/mysql-router
|
||||||
|
vault-mysql-router:
|
||||||
|
charm: cs:~openstack-charmers-next/mysql-router
|
||||||
|
mysql-innodb-cluster:
|
||||||
|
charm: cs:~openstack-charmers-next/mysql-innodb-cluster
|
||||||
|
num_units: 3
|
||||||
|
options:
|
||||||
|
source: *openstack-origin
|
||||||
|
to:
|
||||||
|
- '0'
|
||||||
|
- '1'
|
||||||
|
- '2'
|
||||||
|
rabbitmq-server:
|
||||||
|
charm: cs:~openstack-charmers-next/rabbitmq-server
|
||||||
|
num_units: 1
|
||||||
|
options:
|
||||||
|
source: *openstack-origin
|
||||||
|
to:
|
||||||
|
- '3'
|
||||||
|
neutron-api:
|
||||||
|
charm: cs:~openstack-charmers-next/neutron-api
|
||||||
|
series: *series
|
||||||
|
num_units: 1
|
||||||
|
options:
|
||||||
|
manage-neutron-plugin-legacy-mode: true
|
||||||
|
overlay-network-type: 'vxlan'
|
||||||
|
l2-population: True
|
||||||
|
flat-network-providers: physnet1
|
||||||
|
neutron-security-groups: true
|
||||||
|
openstack-origin: *openstack-origin
|
||||||
|
enable-dvr: True
|
||||||
|
to:
|
||||||
|
- '4'
|
||||||
|
keystone:
|
||||||
|
charm: cs:~openstack-charmers-next/keystone
|
||||||
|
num_units: 1
|
||||||
|
options:
|
||||||
|
openstack-origin: *openstack-origin
|
||||||
|
to:
|
||||||
|
- '5'
|
||||||
|
glance:
|
||||||
|
charm: cs:~openstack-charmers-next/glance
|
||||||
|
num_units: 1
|
||||||
|
options:
|
||||||
|
openstack-origin: *openstack-origin
|
||||||
|
to:
|
||||||
|
- '6'
|
||||||
|
neutron-openvswitch:
|
||||||
|
charm: ../../../neutron-openvswitch
|
||||||
|
options:
|
||||||
|
use-dvr-snat: True
|
||||||
|
bridge-mappings: physnet1:br-ex
|
||||||
|
enable-local-dhcp-and-metadata: True
|
||||||
|
nova-cloud-controller:
|
||||||
|
charm: cs:~openstack-charmers-next/nova-cloud-controller
|
||||||
|
num_units: 1
|
||||||
|
options:
|
||||||
|
network-manager: Neutron
|
||||||
|
openstack-origin: *openstack-origin
|
||||||
|
to:
|
||||||
|
- '7'
|
||||||
|
nova-compute:
|
||||||
|
charm: cs:~openstack-charmers-next/nova-compute
|
||||||
|
num_units: 2
|
||||||
|
options:
|
||||||
|
config-flags: default_ephemeral_format=ext4
|
||||||
|
enable-live-migration: true
|
||||||
|
enable-resize: true
|
||||||
|
migration-auth-type: ssh
|
||||||
|
openstack-origin: *openstack-origin
|
||||||
|
to:
|
||||||
|
- '8'
|
||||||
|
- '9'
|
||||||
|
placement:
|
||||||
|
charm: cs:~openstack-charmers-next/placement
|
||||||
|
num_units: 1
|
||||||
|
options:
|
||||||
|
openstack-origin: *openstack-origin
|
||||||
|
to:
|
||||||
|
- '10'
|
||||||
|
vault-mysql-router:
|
||||||
|
charm: cs:~openstack-charmers-next/mysql-router
|
||||||
|
vault:
|
||||||
|
charm: cs:~openstack-charmers-next/vault
|
||||||
|
num_units: 1
|
||||||
|
to:
|
||||||
|
- '11'
|
||||||
|
ovn-central:
|
||||||
|
charm: cs:~openstack-charmers-next/ovn-central
|
||||||
|
num_units: 3
|
||||||
|
options:
|
||||||
|
source: *openstack-origin
|
||||||
|
to:
|
||||||
|
- '12'
|
||||||
|
neutron-api-plugin-ovn:
|
||||||
|
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn
|
||||||
|
ovn-chassis:
|
||||||
|
charm: cs:~openstack-charmers-next/ovn-chassis
|
||||||
|
options:
|
||||||
|
# start new units paused to allow unit by unit OVS to OVN migration
|
||||||
|
new-units-paused: true
|
||||||
|
relations:
|
||||||
|
- - 'neutron-api:amqp'
|
||||||
|
- 'rabbitmq-server:amqp'
|
||||||
|
- - 'neutron-api:neutron-api'
|
||||||
|
- 'nova-cloud-controller:neutron-api'
|
||||||
|
- - 'neutron-api:identity-service'
|
||||||
|
- 'keystone:identity-service'
|
||||||
|
- - 'nova-compute:neutron-plugin'
|
||||||
|
- 'neutron-openvswitch:neutron-plugin'
|
||||||
|
- - 'neutron-api:neutron-plugin-api'
|
||||||
|
- 'neutron-openvswitch:neutron-plugin-api'
|
||||||
|
- - 'nova-cloud-controller:amqp'
|
||||||
|
- 'rabbitmq-server:amqp'
|
||||||
|
- - 'nova-compute:amqp'
|
||||||
|
- 'rabbitmq-server:amqp'
|
||||||
|
- - 'neutron-openvswitch:amqp'
|
||||||
|
- 'rabbitmq-server:amqp'
|
||||||
|
- - 'nova-cloud-controller:identity-service'
|
||||||
|
- 'keystone:identity-service'
|
||||||
|
- - 'nova-cloud-controller:cloud-compute'
|
||||||
|
- 'nova-compute:cloud-compute'
|
||||||
|
- - 'glance:identity-service'
|
||||||
|
- 'keystone:identity-service'
|
||||||
|
- - 'glance:amqp'
|
||||||
|
- 'rabbitmq-server:amqp'
|
||||||
|
- - 'nova-compute:image-service'
|
||||||
|
- 'glance:image-service'
|
||||||
|
- - 'nova-cloud-controller:image-service'
|
||||||
|
- 'glance:image-service'
|
||||||
|
- - 'placement:identity-service'
|
||||||
|
- 'keystone:identity-service'
|
||||||
|
- - 'placement:placement'
|
||||||
|
- 'nova-cloud-controller:placement'
|
||||||
|
- ["keystone:shared-db", "keystone-mysql-router:shared-db"]
|
||||||
|
- ["glance:shared-db", "glance-mysql-router:shared-db"]
|
||||||
|
- ["nova-cloud-controller:shared-db", "nova-mysql-router:shared-db"]
|
||||||
|
- ["neutron-api:shared-db", "neutron-mysql-router:shared-db"]
|
||||||
|
- ["placement:shared-db", "placement-mysql-router:shared-db"]
|
||||||
|
- ["keystone-mysql-router:db-router", "mysql-innodb-cluster:db-router"]
|
||||||
|
- ["nova-mysql-router:db-router", "mysql-innodb-cluster:db-router"]
|
||||||
|
- ["glance-mysql-router:db-router", "mysql-innodb-cluster:db-router"]
|
||||||
|
- ["neutron-mysql-router:db-router", "mysql-innodb-cluster:db-router"]
|
||||||
|
- ["placement-mysql-router:db-router", "mysql-innodb-cluster:db-router"]
|
||||||
|
# We need to defer the addition of the neutron-api-plugin-ovn subordinate
|
||||||
|
# relation to the functional test as the test will first validate the legacy
|
||||||
|
# Neutron ML2+OVS topology, migrate it to OVN and then confirm connectivity
|
||||||
|
# post migration.
|
||||||
|
#
|
||||||
|
# - - neutron-api-plugin-ovn:neutron-plugin
|
||||||
|
# - neutron-api:neutron-plugin-api-subordinate
|
||||||
|
- - ovn-central:certificates
|
||||||
|
- vault:certificates
|
||||||
|
- - ovn-central:ovsdb-cms
|
||||||
|
- neutron-api-plugin-ovn:ovsdb-cms
|
||||||
|
- - ovn-chassis:nova-compute
|
||||||
|
- nova-compute:neutron-plugin
|
||||||
|
- - ovn-chassis:certificates
|
||||||
|
- vault:certificates
|
||||||
|
- - ovn-chassis:ovsdb
|
||||||
|
- ovn-central:ovsdb
|
||||||
|
- - vault:certificates
|
||||||
|
- neutron-api-plugin-ovn:certificates
|
||||||
|
- - vault:shared-db
|
||||||
|
- vault-mysql-router:shared-db
|
||||||
|
- - vault-mysql-router:db-router
|
||||||
|
- mysql-innodb-cluster:db-router
|
@ -1,7 +1,7 @@
|
|||||||
variables:
|
variables:
|
||||||
openstack-origin: &openstack-origin distro
|
openstack-origin: &openstack-origin distro
|
||||||
|
|
||||||
series: &series groovy
|
series: &series jammy
|
||||||
|
|
||||||
machines:
|
machines:
|
||||||
0:
|
0:
|
@ -1,133 +0,0 @@
|
|||||||
variables:
|
|
||||||
openstack-origin: &openstack-origin cloud:trusty-mitaka
|
|
||||||
|
|
||||||
series: &series trusty
|
|
||||||
|
|
||||||
machines:
|
|
||||||
0:
|
|
||||||
constraints: "mem=3072M"
|
|
||||||
1: {}
|
|
||||||
2: {}
|
|
||||||
3: {}
|
|
||||||
4: {}
|
|
||||||
5: {}
|
|
||||||
6: {}
|
|
||||||
7:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
8:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
|
|
||||||
# We specify machine placements for these to improve iteration
|
|
||||||
# time, given that machine "0" comes up way before machine "7"
|
|
||||||
applications:
|
|
||||||
percona-cluster:
|
|
||||||
charm: cs:trusty/percona-cluster
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '0'
|
|
||||||
rabbitmq-server:
|
|
||||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '1'
|
|
||||||
neutron-api:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-api
|
|
||||||
series: *series
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
flat-network-providers: physnet1
|
|
||||||
neutron-security-groups: true
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '2'
|
|
||||||
keystone:
|
|
||||||
charm: cs:~openstack-charmers-next/keystone
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '3'
|
|
||||||
glance:
|
|
||||||
charm: cs:~openstack-charmers-next/glance
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '4'
|
|
||||||
neutron-openvswitch:
|
|
||||||
charm: ../../../neutron-openvswitch
|
|
||||||
neutron-gateway:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-gateway
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
bridge-mappings: physnet1:br-ex
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '5'
|
|
||||||
nova-cloud-controller:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-cloud-controller
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
network-manager: Neutron
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '6'
|
|
||||||
nova-compute:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-compute
|
|
||||||
num_units: 2
|
|
||||||
options:
|
|
||||||
config-flags: default_ephemeral_format=ext4
|
|
||||||
enable-live-migration: true
|
|
||||||
enable-resize: true
|
|
||||||
migration-auth-type: ssh
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '7'
|
|
||||||
- '8'
|
|
||||||
relations:
|
|
||||||
- - 'neutron-api:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-api:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-api:neutron-api'
|
|
||||||
- 'nova-cloud-controller:neutron-api'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-gateway:neutron-plugin-api'
|
|
||||||
- - 'neutron-api:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'keystone:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'nova-compute:neutron-plugin'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin-api'
|
|
||||||
- - 'nova-cloud-controller:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-gateway:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-openvswitch:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'nova-cloud-controller:cloud-compute'
|
|
||||||
- 'nova-compute:cloud-compute'
|
|
||||||
- - 'glance:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'glance:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'glance:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:quantum-network-service'
|
|
||||||
- 'neutron-gateway:quantum-network-service'
|
|
@ -1,133 +0,0 @@
|
|||||||
variables:
|
|
||||||
openstack-origin: &openstack-origin distro
|
|
||||||
|
|
||||||
series: &series xenial
|
|
||||||
|
|
||||||
machines:
|
|
||||||
0:
|
|
||||||
constraints: "mem=3072M"
|
|
||||||
1: {}
|
|
||||||
2: {}
|
|
||||||
3: {}
|
|
||||||
4: {}
|
|
||||||
5: {}
|
|
||||||
6: {}
|
|
||||||
7:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
8:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
|
|
||||||
# We specify machine placements for these to improve iteration
|
|
||||||
# time, given that machine "0" comes up way before machine "7"
|
|
||||||
applications:
|
|
||||||
percona-cluster:
|
|
||||||
charm: cs:~openstack-charmers-next/percona-cluster
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '0'
|
|
||||||
rabbitmq-server:
|
|
||||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '1'
|
|
||||||
neutron-api:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-api
|
|
||||||
series: *series
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
flat-network-providers: physnet1
|
|
||||||
neutron-security-groups: true
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '2'
|
|
||||||
keystone:
|
|
||||||
charm: cs:~openstack-charmers-next/keystone
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '3'
|
|
||||||
glance:
|
|
||||||
charm: cs:~openstack-charmers-next/glance
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '4'
|
|
||||||
neutron-openvswitch:
|
|
||||||
charm: ../../../neutron-openvswitch
|
|
||||||
neutron-gateway:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-gateway
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
bridge-mappings: physnet1:br-ex
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '5'
|
|
||||||
nova-cloud-controller:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-cloud-controller
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
network-manager: Neutron
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '6'
|
|
||||||
nova-compute:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-compute
|
|
||||||
num_units: 2
|
|
||||||
options:
|
|
||||||
config-flags: default_ephemeral_format=ext4
|
|
||||||
enable-live-migration: true
|
|
||||||
enable-resize: true
|
|
||||||
migration-auth-type: ssh
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '7'
|
|
||||||
- '8'
|
|
||||||
relations:
|
|
||||||
- - 'neutron-api:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-api:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-api:neutron-api'
|
|
||||||
- 'nova-cloud-controller:neutron-api'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-gateway:neutron-plugin-api'
|
|
||||||
- - 'neutron-api:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'keystone:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'nova-compute:neutron-plugin'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin-api'
|
|
||||||
- - 'nova-cloud-controller:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-gateway:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-openvswitch:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'nova-cloud-controller:cloud-compute'
|
|
||||||
- 'nova-compute:cloud-compute'
|
|
||||||
- - 'glance:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'glance:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'glance:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:quantum-network-service'
|
|
||||||
- 'neutron-gateway:quantum-network-service'
|
|
@ -1,133 +0,0 @@
|
|||||||
variables:
|
|
||||||
openstack-origin: &openstack-origin cloud:xenial-ocata
|
|
||||||
|
|
||||||
series: &series xenial
|
|
||||||
|
|
||||||
machines:
|
|
||||||
0:
|
|
||||||
constraints: "mem=3072M"
|
|
||||||
1: {}
|
|
||||||
2: {}
|
|
||||||
3: {}
|
|
||||||
4: {}
|
|
||||||
5: {}
|
|
||||||
6: {}
|
|
||||||
7:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
8:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
|
|
||||||
# We specify machine placements for these to improve iteration
|
|
||||||
# time, given that machine "0" comes up way before machine "7"
|
|
||||||
applications:
|
|
||||||
percona-cluster:
|
|
||||||
charm: cs:~openstack-charmers-next/percona-cluster
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '0'
|
|
||||||
rabbitmq-server:
|
|
||||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '1'
|
|
||||||
neutron-api:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-api
|
|
||||||
series: *series
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
flat-network-providers: physnet1
|
|
||||||
neutron-security-groups: true
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '2'
|
|
||||||
keystone:
|
|
||||||
charm: cs:~openstack-charmers-next/keystone
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '3'
|
|
||||||
glance:
|
|
||||||
charm: cs:~openstack-charmers-next/glance
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '4'
|
|
||||||
neutron-openvswitch:
|
|
||||||
charm: ../../../neutron-openvswitch
|
|
||||||
neutron-gateway:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-gateway
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
bridge-mappings: physnet1:br-ex
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '5'
|
|
||||||
nova-cloud-controller:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-cloud-controller
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
network-manager: Neutron
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '6'
|
|
||||||
nova-compute:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-compute
|
|
||||||
num_units: 2
|
|
||||||
options:
|
|
||||||
config-flags: default_ephemeral_format=ext4
|
|
||||||
enable-live-migration: true
|
|
||||||
enable-resize: true
|
|
||||||
migration-auth-type: ssh
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '7'
|
|
||||||
- '8'
|
|
||||||
relations:
|
|
||||||
- - 'neutron-api:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-api:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-api:neutron-api'
|
|
||||||
- 'nova-cloud-controller:neutron-api'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-gateway:neutron-plugin-api'
|
|
||||||
- - 'neutron-api:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'keystone:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin-api'
|
|
||||||
- - 'nova-compute:neutron-plugin'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin'
|
|
||||||
- - 'nova-cloud-controller:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-gateway:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-openvswitch:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'nova-cloud-controller:cloud-compute'
|
|
||||||
- 'nova-compute:cloud-compute'
|
|
||||||
- - 'glance:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'glance:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'glance:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:quantum-network-service'
|
|
||||||
- 'neutron-gateway:quantum-network-service'
|
|
@ -1,133 +0,0 @@
|
|||||||
variables:
|
|
||||||
openstack-origin: &openstack-origin cloud:xenial-pike
|
|
||||||
|
|
||||||
series: &series xenial
|
|
||||||
|
|
||||||
machines:
|
|
||||||
0:
|
|
||||||
constraints: "mem=3072M"
|
|
||||||
1: {}
|
|
||||||
2: {}
|
|
||||||
3: {}
|
|
||||||
4: {}
|
|
||||||
5: {}
|
|
||||||
6: {}
|
|
||||||
7:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
8:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
|
|
||||||
# We specify machine placements for these to improve iteration
|
|
||||||
# time, given that machine "0" comes up way before machine "7"
|
|
||||||
applications:
|
|
||||||
percona-cluster:
|
|
||||||
charm: cs:~openstack-charmers-next/percona-cluster
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '0'
|
|
||||||
rabbitmq-server:
|
|
||||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '1'
|
|
||||||
neutron-api:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-api
|
|
||||||
series: *series
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
flat-network-providers: physnet1
|
|
||||||
neutron-security-groups: true
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '2'
|
|
||||||
keystone:
|
|
||||||
charm: cs:~openstack-charmers-next/keystone
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '3'
|
|
||||||
glance:
|
|
||||||
charm: cs:~openstack-charmers-next/glance
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '4'
|
|
||||||
neutron-openvswitch:
|
|
||||||
charm: ../../../neutron-openvswitch
|
|
||||||
neutron-gateway:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-gateway
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
bridge-mappings: physnet1:br-ex
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '5'
|
|
||||||
nova-cloud-controller:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-cloud-controller
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
network-manager: Neutron
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '6'
|
|
||||||
nova-compute:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-compute
|
|
||||||
num_units: 2
|
|
||||||
options:
|
|
||||||
config-flags: default_ephemeral_format=ext4
|
|
||||||
enable-live-migration: true
|
|
||||||
enable-resize: true
|
|
||||||
migration-auth-type: ssh
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '7'
|
|
||||||
- '8'
|
|
||||||
relations:
|
|
||||||
- - 'neutron-api:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-api:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-api:neutron-api'
|
|
||||||
- 'nova-cloud-controller:neutron-api'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-gateway:neutron-plugin-api'
|
|
||||||
- - 'neutron-api:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'keystone:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin-api'
|
|
||||||
- - 'nova-compute:neutron-plugin'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin'
|
|
||||||
- - 'nova-cloud-controller:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-gateway:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-openvswitch:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'nova-cloud-controller:cloud-compute'
|
|
||||||
- 'nova-compute:cloud-compute'
|
|
||||||
- - 'glance:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'glance:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'glance:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:quantum-network-service'
|
|
||||||
- 'neutron-gateway:quantum-network-service'
|
|
@ -1,125 +0,0 @@
|
|||||||
variables:
|
|
||||||
openstack-origin: &openstack-origin cloud:xenial-queens
|
|
||||||
|
|
||||||
series: &series xenial
|
|
||||||
|
|
||||||
machines:
|
|
||||||
0:
|
|
||||||
constraints: "mem=3072M"
|
|
||||||
1: {}
|
|
||||||
2: {}
|
|
||||||
3: {}
|
|
||||||
4: {}
|
|
||||||
5: {}
|
|
||||||
6:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
7:
|
|
||||||
constraints: "root-disk=20G mem=4G"
|
|
||||||
|
|
||||||
# We specify machine placements for these to improve iteration
|
|
||||||
# time, given that machine "0" comes up way before machine "7"
|
|
||||||
applications:
|
|
||||||
percona-cluster:
|
|
||||||
charm: cs:~openstack-charmers-next/percona-cluster
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '0'
|
|
||||||
rabbitmq-server:
|
|
||||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
source: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '1'
|
|
||||||
neutron-api:
|
|
||||||
charm: cs:~openstack-charmers-next/neutron-api
|
|
||||||
series: *series
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
overlay-network-type: 'vxlan'
|
|
||||||
l2-population: True
|
|
||||||
flat-network-providers: physnet1
|
|
||||||
neutron-security-groups: true
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
enable-dvr: True
|
|
||||||
to:
|
|
||||||
- '2'
|
|
||||||
keystone:
|
|
||||||
charm: cs:~openstack-charmers-next/keystone
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '3'
|
|
||||||
glance:
|
|
||||||
charm: cs:~openstack-charmers-next/glance
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '4'
|
|
||||||
neutron-openvswitch:
|
|
||||||
charm: ../../../neutron-openvswitch
|
|
||||||
options:
|
|
||||||
use-dvr-snat: True
|
|
||||||
bridge-mappings: physnet1:br-ex
|
|
||||||
enable-local-dhcp-and-metadata: True
|
|
||||||
nova-cloud-controller:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-cloud-controller
|
|
||||||
num_units: 1
|
|
||||||
options:
|
|
||||||
network-manager: Neutron
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '5'
|
|
||||||
nova-compute:
|
|
||||||
charm: cs:~openstack-charmers-next/nova-compute
|
|
||||||
num_units: 2
|
|
||||||
options:
|
|
||||||
config-flags: default_ephemeral_format=ext4
|
|
||||||
enable-live-migration: true
|
|
||||||
enable-resize: true
|
|
||||||
migration-auth-type: ssh
|
|
||||||
openstack-origin: *openstack-origin
|
|
||||||
to:
|
|
||||||
- '6'
|
|
||||||
- '7'
|
|
||||||
relations:
|
|
||||||
- - 'neutron-api:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'neutron-api:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-api:neutron-api'
|
|
||||||
- 'nova-cloud-controller:neutron-api'
|
|
||||||
- - 'neutron-api:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'keystone:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'nova-compute:neutron-plugin'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin'
|
|
||||||
- - 'neutron-api:neutron-plugin-api'
|
|
||||||
- 'neutron-openvswitch:neutron-plugin-api'
|
|
||||||
- - 'nova-cloud-controller:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'nova-cloud-controller:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'neutron-openvswitch:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-cloud-controller:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'nova-cloud-controller:cloud-compute'
|
|
||||||
- 'nova-compute:cloud-compute'
|
|
||||||
- - 'glance:identity-service'
|
|
||||||
- 'keystone:identity-service'
|
|
||||||
- - 'glance:shared-db'
|
|
||||||
- 'percona-cluster:shared-db'
|
|
||||||
- - 'glance:amqp'
|
|
||||||
- 'rabbitmq-server:amqp'
|
|
||||||
- - 'nova-compute:image-service'
|
|
||||||
- 'glance:image-service'
|
|
||||||
- - 'nova-cloud-controller:image-service'
|
|
||||||
- 'glance:image-service'
|
|
@ -9,26 +9,22 @@ smoke_bundles:
|
|||||||
- migrate-ovn: focal-ussuri-dvr-snat
|
- migrate-ovn: focal-ussuri-dvr-snat
|
||||||
|
|
||||||
gate_bundles:
|
gate_bundles:
|
||||||
- xenial-mitaka
|
|
||||||
- bionic-queens-dvr-snat
|
- bionic-queens-dvr-snat
|
||||||
- bionic-stein-dvr-snat
|
- bionic-stein-dvr-snat
|
||||||
- bionic-train-dvr-snat
|
|
||||||
- bionic-ussuri-dvr-snat
|
- bionic-ussuri-dvr-snat
|
||||||
- migrate-ovn: focal-ussuri-dvr-snat
|
- migrate-ovn: focal-ussuri-dvr-snat
|
||||||
- migrate-ovn: focal-victoria-dvr-snat
|
- migrate-ovn: focal-victoria-dvr-snat
|
||||||
- migrate-ovn: groovy-victoria-dvr-snat
|
|
||||||
|
|
||||||
dev_bundles:
|
|
||||||
- trusty-mitaka
|
|
||||||
- xenial-ocata
|
|
||||||
- xenial-pike
|
|
||||||
- xenial-queens-dvr-snat
|
|
||||||
- bionic-rocky-dvr-snat
|
|
||||||
- migrate-ovn: focal-wallaby-dvr-snat
|
- migrate-ovn: focal-wallaby-dvr-snat
|
||||||
- migrate-ovn: focal-xena-dvr-snat
|
- migrate-ovn: focal-xena-dvr-snat
|
||||||
- migrate-ovn: hirstute-wallaby-dvr-snat
|
- migrate-ovn: hirsute-wallaby-dvr-snat
|
||||||
- migrate-ovn: impish-xena-dvr-snat
|
- migrate-ovn: impish-xena-dvr-snat
|
||||||
|
|
||||||
|
dev_bundles:
|
||||||
|
- bionic-rocky-dvr-snat
|
||||||
|
- bionic-train-dvr-snat
|
||||||
|
- migrate-ovn: focal-yoga-dvr-snat
|
||||||
|
- migrate-ovn: jammy-yoga-dvr-snat
|
||||||
|
|
||||||
configure:
|
configure:
|
||||||
- zaza.openstack.charm_tests.glance.setup.add_lts_image
|
- zaza.openstack.charm_tests.glance.setup.add_lts_image
|
||||||
- zaza.openstack.charm_tests.neutron.setup.basic_overcloud_network
|
- zaza.openstack.charm_tests.neutron.setup.basic_overcloud_network
|
||||||
@ -81,5 +77,6 @@ tests_options:
|
|||||||
# allows verifying instances survive a SDN migration.
|
# allows verifying instances survive a SDN migration.
|
||||||
zaza.openstack.charm_tests.neutron.tests.NeutronNetworkingTest.test_instances_have_networking.run_resource_cleanup: false
|
zaza.openstack.charm_tests.neutron.tests.NeutronNetworkingTest.test_instances_have_networking.run_resource_cleanup: false
|
||||||
force_deploy:
|
force_deploy:
|
||||||
- groovy-victoria-dvr-snat
|
- hirsute-wallaby-dvr-snat
|
||||||
- impish-xena-dvr-snat
|
- impish-xena-dvr-snat
|
||||||
|
- jammy-yoga-dvr-snat
|
||||||
|
5
tox.ini
5
tox.ini
@ -61,6 +61,11 @@ basepython = python3.8
|
|||||||
deps = -r{toxinidir}/requirements.txt
|
deps = -r{toxinidir}/requirements.txt
|
||||||
-r{toxinidir}/test-requirements.txt
|
-r{toxinidir}/test-requirements.txt
|
||||||
|
|
||||||
|
[testenv:py39]
|
||||||
|
basepython = python3.9
|
||||||
|
deps = -r{toxinidir}/requirements.txt
|
||||||
|
-r{toxinidir}/test-requirements.txt
|
||||||
|
|
||||||
[testenv:py3]
|
[testenv:py3]
|
||||||
basepython = python3
|
basepython = python3
|
||||||
deps = -r{toxinidir}/requirements.txt
|
deps = -r{toxinidir}/requirements.txt
|
||||||
|
Loading…
Reference in New Issue
Block a user