Update to classic charms to build using charmcraft in CI
This is for lastest/edge and yoga/edge. This update is to ensure that the Zuul Canonical CI builds the charm before functional tests and ensure that that artifact is used for the functional tests. This is to try to ensure that the charm that gets landed to the charmhub is the same charm that was tested with. Change-Id: Ia56c171397ecf9fa638405fd960593cd57b87047 Co-authored-by: Aurelien Lourot <aurelien.lourot@canonical.com>
This commit is contained in:
parent
f6a9487b05
commit
dc8a0abddf
1
.gitignore
vendored
1
.gitignore
vendored
@ -6,6 +6,7 @@ bin
|
||||
tags
|
||||
*.sw[nop]
|
||||
*.pyc
|
||||
*.charm
|
||||
.unit-state.db
|
||||
.pydevproject
|
||||
func-results.json
|
||||
|
7
build-requirements.txt
Normal file
7
build-requirements.txt
Normal file
@ -0,0 +1,7 @@
|
||||
# NOTES(lourot):
|
||||
# * We don't install charmcraft via pip anymore because it anyway spins up a
|
||||
# container and scp the system's charmcraft snap inside it. So the charmcraft
|
||||
# snap is necessary on the system anyway.
|
||||
# * `tox -e build` successfully validated with charmcraft 1.2.1
|
||||
|
||||
cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35.
|
27
charmcraft.yaml
Normal file
27
charmcraft.yaml
Normal file
@ -0,0 +1,27 @@
|
||||
type: charm
|
||||
|
||||
parts:
|
||||
charm:
|
||||
plugin: dump
|
||||
source: .
|
||||
prime:
|
||||
- actions/*
|
||||
- charmhelpers/*
|
||||
- files/*
|
||||
- hooks/*
|
||||
- lib/*
|
||||
- templates/*
|
||||
- actions.yaml
|
||||
- config.yaml
|
||||
- copyright
|
||||
- icon.svg
|
||||
- LICENSE
|
||||
- Makefile
|
||||
- metadata.yaml
|
||||
- README.md
|
||||
|
||||
bases:
|
||||
- name: ubuntu
|
||||
channel: "20.04"
|
||||
architectures:
|
||||
- amd64
|
@ -17,10 +17,7 @@ description: |
|
||||
tags:
|
||||
- openstack
|
||||
series:
|
||||
- bionic
|
||||
- focal
|
||||
- groovy
|
||||
- hirsute
|
||||
- impish
|
||||
extra-bindings:
|
||||
data:
|
||||
|
90
osci.yaml
90
osci.yaml
@ -1,103 +1,51 @@
|
||||
- project:
|
||||
templates:
|
||||
- charm-yoga-unit-jobs
|
||||
- charm-unit-jobs-py38
|
||||
- charm-unit-jobs-py39
|
||||
check:
|
||||
jobs:
|
||||
- bionic-queens-dvr-snat
|
||||
- bionic-stein-dvr-snat
|
||||
- bionic-train-dvr-snat
|
||||
- bionic-ussuri-dvr-snat
|
||||
- migrate-ovn-focal-ussuri-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:
|
||||
voting: false
|
||||
- migrate-ovn-focal-xena-dvr-snat:
|
||||
- migrate-ovn-focal-xena-dvr-snat
|
||||
- migrate-ovn-impish-xena-dvr-snat:
|
||||
voting: false
|
||||
- migrate-ovn-focal-yoga-dvr-snat:
|
||||
voting: false
|
||||
- migrate-ovn-hirsute-wallaby-dvr-snat:
|
||||
voting: false
|
||||
- migrate-ovn-impish-xena-dvr-snat:
|
||||
voting: false
|
||||
- migrate-ovn-jammy-yoga-dvr-snat:
|
||||
voting: false
|
||||
vars:
|
||||
needs_charm_build: true
|
||||
charm_build_name: neutron-openvswitch
|
||||
build_type: charmcraft
|
||||
|
||||
- job:
|
||||
name: bionic-queens-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: &smoke-jobs
|
||||
- migrate-ovn-focal-ussuri-dvr-snat
|
||||
vars:
|
||||
tox_extra_args: bionic-queens-dvr-snat
|
||||
- job:
|
||||
name: bionic-stein-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
vars:
|
||||
tox_extra_args: bionic-stein-dvr-snat
|
||||
- job:
|
||||
name: bionic-train-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
vars:
|
||||
tox_extra_args: bionic-train-dvr-snat
|
||||
- job:
|
||||
name: bionic-ussuri-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
vars:
|
||||
tox_extra_args: bionic-ussuri-dvr-snat
|
||||
- job:
|
||||
name: migrate-ovn-focal-ussuri-dvr-snat
|
||||
parent: func-target
|
||||
dependencies:
|
||||
- osci-lint
|
||||
- tox-py36
|
||||
- tox-py38
|
||||
- tox-py39
|
||||
vars:
|
||||
tox_extra_args: migrate-ovn:focal-ussuri-dvr-snat
|
||||
- job:
|
||||
name: migrate-ovn-focal-victoria-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
vars:
|
||||
tox_extra_args: migrate-ovn:focal-victoria-dvr-snat
|
||||
- job:
|
||||
name: migrate-ovn-focal-wallaby-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
vars:
|
||||
tox_extra_args: migrate-ovn:focal-wallaby-dvr-snat
|
||||
- job:
|
||||
name: migrate-ovn-focal-xena-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
dependencies:
|
||||
- charm-build
|
||||
- osci-lint
|
||||
- tox-py38
|
||||
- tox-py39
|
||||
vars:
|
||||
tox_extra_args: migrate-ovn:focal-xena-dvr-snat
|
||||
- job:
|
||||
name: migrate-ovn-focal-yoga-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
dependencies:
|
||||
- migrate-ovn-focal-xena-dvr-snat
|
||||
vars:
|
||||
tox_extra_args: migrate-ovn:focal-yoga-dvr-snat
|
||||
- job:
|
||||
name: migrate-ovn-hirsute-wallaby-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
vars:
|
||||
tox_extra_args: migrate-ovn:hirsute-wallaby-dvr-snat
|
||||
- job:
|
||||
name: migrate-ovn-impish-xena-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
dependencies:
|
||||
- migrate-ovn-focal-xena-dvr-snat
|
||||
vars:
|
||||
tox_extra_args: migrate-ovn:impish-xena-dvr-snat
|
||||
- job:
|
||||
name: migrate-ovn-jammy-yoga-dvr-snat
|
||||
parent: func-target
|
||||
dependencies: *smoke-jobs
|
||||
dependencies:
|
||||
- migrate-ovn-focal-xena-dvr-snat
|
||||
vars:
|
||||
tox_extra_args: migrate-ovn:jammy-yoga-dvr-snat
|
||||
|
13
rename.sh
Executable file
13
rename.sh
Executable file
@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
charm=$(grep "charm_build_name" osci.yaml | awk '{print $2}')
|
||||
echo "renaming ${charm}_*.charm to ${charm}.charm"
|
||||
echo -n "pwd: "
|
||||
pwd
|
||||
ls -al
|
||||
echo "Removing bad downloaded charm maybe?"
|
||||
if [[ -e "${charm}.charm" ]];
|
||||
then
|
||||
rm "${charm}.charm"
|
||||
fi
|
||||
echo "Renaming charm here."
|
||||
mv ${charm}_*.charm ${charm}.charm
|
@ -5,5 +5,5 @@ from the perspective of this charm, its requirements and its features, as
|
||||
exercised in a subset of the full OpenStack deployment test bundle topology.
|
||||
|
||||
For full details on functional testing of OpenStack charms please refer to
|
||||
the [functional testing](http://docs.openstack.org/developer/charm-guide/testing.html#functional-testing)
|
||||
the [functional testing](https://docs.openstack.org/charm-guide/latest/reference/testing.html#functional-testing)
|
||||
section of the OpenStack Charm Guide.
|
||||
|
@ -1,125 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin distro
|
||||
|
||||
series: &series bionic
|
||||
|
||||
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'
|
@ -1,125 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:bionic-rocky
|
||||
|
||||
series: &series bionic
|
||||
|
||||
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'
|
@ -1,125 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:bionic-stein
|
||||
|
||||
series: &series bionic
|
||||
|
||||
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'
|
@ -1,139 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:bionic-train
|
||||
|
||||
series: &series bionic
|
||||
|
||||
machines:
|
||||
0:
|
||||
constraints: "mem=3072M"
|
||||
1: {}
|
||||
2: {}
|
||||
3: {}
|
||||
4: {}
|
||||
5: {}
|
||||
6:
|
||||
constraints: "root-disk=20G mem=4G"
|
||||
7:
|
||||
constraints: "root-disk=20G mem=4G"
|
||||
8: {}
|
||||
|
||||
# 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'
|
||||
placement:
|
||||
charm: cs:~openstack-charmers-next/placement
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '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: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'
|
||||
- - 'placement:shared-db'
|
||||
- 'percona-cluster:shared-db'
|
||||
- - 'placement:identity-service'
|
||||
- 'keystone:identity-service'
|
||||
- - 'placement:placement'
|
||||
- 'nova-cloud-controller:placement'
|
@ -1,140 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:bionic-ussuri
|
||||
|
||||
series: &series bionic
|
||||
|
||||
machines:
|
||||
0:
|
||||
constraints: "mem=3072M"
|
||||
1: {}
|
||||
2: {}
|
||||
3: {}
|
||||
4: {}
|
||||
5: {}
|
||||
6:
|
||||
constraints: "root-disk=20G mem=4G"
|
||||
7:
|
||||
constraints: "root-disk=20G mem=4G"
|
||||
8: {}
|
||||
|
||||
# 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:
|
||||
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:
|
||||
- '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'
|
||||
placement:
|
||||
charm: cs:~openstack-charmers-next/placement
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '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: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'
|
||||
- - 'placement:shared-db'
|
||||
- 'percona-cluster:shared-db'
|
||||
- - 'placement:identity-service'
|
||||
- 'keystone:identity-service'
|
||||
- - 'placement:placement'
|
||||
- 'nova-cloud-controller:placement'
|
@ -1,204 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin distro
|
||||
|
||||
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,204 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:focal-victoria
|
||||
|
||||
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,204 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:focal-wallaby
|
||||
|
||||
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
|
@ -27,19 +27,25 @@ machines:
|
||||
# time, given that machine "0" comes up way before machine "7"
|
||||
applications:
|
||||
keystone-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
nova-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
glance-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
neutron-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
placement-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
vault-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
mysql-innodb-cluster:
|
||||
charm: cs:~openstack-charmers-next/mysql-innodb-cluster
|
||||
charm: ch:mysql-innodb-cluster
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
@ -47,15 +53,17 @@ applications:
|
||||
- '0'
|
||||
- '1'
|
||||
- '2'
|
||||
channel: latest/edge
|
||||
rabbitmq-server:
|
||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '3'
|
||||
channel: latest/edge
|
||||
neutron-api:
|
||||
charm: cs:~openstack-charmers-next/neutron-api
|
||||
charm: ch:neutron-api
|
||||
series: *series
|
||||
num_units: 1
|
||||
options:
|
||||
@ -68,36 +76,40 @@ applications:
|
||||
enable-dvr: True
|
||||
to:
|
||||
- '4'
|
||||
channel: yoga/edge
|
||||
keystone:
|
||||
charm: cs:~openstack-charmers-next/keystone
|
||||
charm: ch:keystone
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '5'
|
||||
channel: yoga/edge
|
||||
glance:
|
||||
charm: cs:~openstack-charmers-next/glance
|
||||
charm: ch:glance
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '6'
|
||||
channel: yoga/edge
|
||||
neutron-openvswitch:
|
||||
charm: ../../../neutron-openvswitch
|
||||
charm: ../../neutron-openvswitch.charm
|
||||
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
|
||||
charm: ch:nova-cloud-controller
|
||||
num_units: 1
|
||||
options:
|
||||
network-manager: Neutron
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '7'
|
||||
channel: yoga/edge
|
||||
nova-compute:
|
||||
charm: cs:~openstack-charmers-next/nova-compute
|
||||
charm: ch:nova-compute
|
||||
num_units: 2
|
||||
options:
|
||||
config-flags: default_ephemeral_format=ext4
|
||||
@ -108,34 +120,41 @@ applications:
|
||||
to:
|
||||
- '8'
|
||||
- '9'
|
||||
channel: yoga/edge
|
||||
placement:
|
||||
charm: cs:~openstack-charmers-next/placement
|
||||
charm: ch:placement
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '10'
|
||||
channel: yoga/edge
|
||||
vault-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
vault:
|
||||
charm: cs:~openstack-charmers-next/vault
|
||||
charm: ch:vault
|
||||
num_units: 1
|
||||
to:
|
||||
- '11'
|
||||
channel: latest/edge
|
||||
ovn-central:
|
||||
charm: cs:~openstack-charmers-next/ovn-central
|
||||
charm: ch:ovn-central
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '12'
|
||||
channel: latest/edge
|
||||
neutron-api-plugin-ovn:
|
||||
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn
|
||||
charm: ch:neutron-api-plugin-ovn
|
||||
channel: yoga/edge
|
||||
ovn-chassis:
|
||||
charm: cs:~openstack-charmers-next/ovn-chassis
|
||||
charm: ch:ovn-chassis
|
||||
options:
|
||||
# start new units paused to allow unit by unit OVS to OVN migration
|
||||
new-units-paused: true
|
||||
channel: latest/edge
|
||||
relations:
|
||||
- - 'neutron-api:amqp'
|
||||
- 'rabbitmq-server:amqp'
|
||||
|
@ -27,19 +27,25 @@ machines:
|
||||
# time, given that machine "0" comes up way before machine "7"
|
||||
applications:
|
||||
keystone-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
nova-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
glance-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
neutron-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
placement-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
vault-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
mysql-innodb-cluster:
|
||||
charm: cs:~openstack-charmers-next/mysql-innodb-cluster
|
||||
charm: ch:mysql-innodb-cluster
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
@ -47,15 +53,17 @@ applications:
|
||||
- '0'
|
||||
- '1'
|
||||
- '2'
|
||||
channel: latest/edge
|
||||
rabbitmq-server:
|
||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '3'
|
||||
channel: latest/edge
|
||||
neutron-api:
|
||||
charm: cs:~openstack-charmers-next/neutron-api
|
||||
charm: ch:neutron-api
|
||||
series: *series
|
||||
num_units: 1
|
||||
options:
|
||||
@ -68,36 +76,40 @@ applications:
|
||||
enable-dvr: True
|
||||
to:
|
||||
- '4'
|
||||
channel: yoga/edge
|
||||
keystone:
|
||||
charm: cs:~openstack-charmers-next/keystone
|
||||
charm: ch:keystone
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '5'
|
||||
channel: yoga/edge
|
||||
glance:
|
||||
charm: cs:~openstack-charmers-next/glance
|
||||
charm: ch:glance
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '6'
|
||||
channel: yoga/edge
|
||||
neutron-openvswitch:
|
||||
charm: ../../../neutron-openvswitch
|
||||
charm: ../../neutron-openvswitch.charm
|
||||
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
|
||||
charm: ch:nova-cloud-controller
|
||||
num_units: 1
|
||||
options:
|
||||
network-manager: Neutron
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '7'
|
||||
channel: yoga/edge
|
||||
nova-compute:
|
||||
charm: cs:~openstack-charmers-next/nova-compute
|
||||
charm: ch:nova-compute
|
||||
num_units: 2
|
||||
options:
|
||||
config-flags: default_ephemeral_format=ext4
|
||||
@ -108,34 +120,41 @@ applications:
|
||||
to:
|
||||
- '8'
|
||||
- '9'
|
||||
channel: yoga/edge
|
||||
placement:
|
||||
charm: cs:~openstack-charmers-next/placement
|
||||
charm: ch:placement
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '10'
|
||||
channel: yoga/edge
|
||||
vault-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
vault:
|
||||
charm: cs:~openstack-charmers-next/vault
|
||||
charm: ch:vault
|
||||
num_units: 1
|
||||
to:
|
||||
- '11'
|
||||
channel: latest/edge
|
||||
ovn-central:
|
||||
charm: cs:~openstack-charmers-next/ovn-central
|
||||
charm: ch:ovn-central
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '12'
|
||||
channel: latest/edge
|
||||
neutron-api-plugin-ovn:
|
||||
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn
|
||||
charm: ch:neutron-api-plugin-ovn
|
||||
channel: yoga/edge
|
||||
ovn-chassis:
|
||||
charm: cs:~openstack-charmers-next/ovn-chassis
|
||||
charm: ch:ovn-chassis
|
||||
options:
|
||||
# start new units paused to allow unit by unit OVS to OVN migration
|
||||
new-units-paused: true
|
||||
channel: latest/edge
|
||||
relations:
|
||||
- - 'neutron-api:amqp'
|
||||
- 'rabbitmq-server:amqp'
|
||||
|
@ -1,204 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin distro
|
||||
|
||||
series: &series hirsute
|
||||
|
||||
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
|
@ -27,19 +27,25 @@ machines:
|
||||
# time, given that machine "0" comes up way before machine "7"
|
||||
applications:
|
||||
keystone-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
nova-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
glance-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
neutron-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
placement-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
vault-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
mysql-innodb-cluster:
|
||||
charm: cs:~openstack-charmers-next/mysql-innodb-cluster
|
||||
charm: ch:mysql-innodb-cluster
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
@ -47,15 +53,17 @@ applications:
|
||||
- '0'
|
||||
- '1'
|
||||
- '2'
|
||||
channel: latest/edge
|
||||
rabbitmq-server:
|
||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '3'
|
||||
channel: latest/edge
|
||||
neutron-api:
|
||||
charm: cs:~openstack-charmers-next/neutron-api
|
||||
charm: ch:neutron-api
|
||||
series: *series
|
||||
num_units: 1
|
||||
options:
|
||||
@ -68,36 +76,40 @@ applications:
|
||||
enable-dvr: True
|
||||
to:
|
||||
- '4'
|
||||
channel: yoga/edge
|
||||
keystone:
|
||||
charm: cs:~openstack-charmers-next/keystone
|
||||
charm: ch:keystone
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '5'
|
||||
channel: yoga/edge
|
||||
glance:
|
||||
charm: cs:~openstack-charmers-next/glance
|
||||
charm: ch:glance
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '6'
|
||||
channel: yoga/edge
|
||||
neutron-openvswitch:
|
||||
charm: ../../../neutron-openvswitch
|
||||
charm: ../../neutron-openvswitch.charm
|
||||
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
|
||||
charm: ch:nova-cloud-controller
|
||||
num_units: 1
|
||||
options:
|
||||
network-manager: Neutron
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '7'
|
||||
channel: yoga/edge
|
||||
nova-compute:
|
||||
charm: cs:~openstack-charmers-next/nova-compute
|
||||
charm: ch:nova-compute
|
||||
num_units: 2
|
||||
options:
|
||||
config-flags: default_ephemeral_format=ext4
|
||||
@ -108,34 +120,41 @@ applications:
|
||||
to:
|
||||
- '8'
|
||||
- '9'
|
||||
channel: yoga/edge
|
||||
placement:
|
||||
charm: cs:~openstack-charmers-next/placement
|
||||
charm: ch:placement
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '10'
|
||||
channel: yoga/edge
|
||||
vault-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
vault:
|
||||
charm: cs:~openstack-charmers-next/vault
|
||||
charm: ch:vault
|
||||
num_units: 1
|
||||
to:
|
||||
- '11'
|
||||
channel: latest/edge
|
||||
ovn-central:
|
||||
charm: cs:~openstack-charmers-next/ovn-central
|
||||
charm: ch:ovn-central
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '12'
|
||||
channel: latest/edge
|
||||
neutron-api-plugin-ovn:
|
||||
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn
|
||||
charm: ch:neutron-api-plugin-ovn
|
||||
channel: yoga/edge
|
||||
ovn-chassis:
|
||||
charm: cs:~openstack-charmers-next/ovn-chassis
|
||||
charm: ch:ovn-chassis
|
||||
options:
|
||||
# start new units paused to allow unit by unit OVS to OVN migration
|
||||
new-units-paused: true
|
||||
channel: latest/edge
|
||||
relations:
|
||||
- - 'neutron-api:amqp'
|
||||
- 'rabbitmq-server:amqp'
|
||||
|
@ -27,19 +27,25 @@ machines:
|
||||
# time, given that machine "0" comes up way before machine "7"
|
||||
applications:
|
||||
keystone-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
nova-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
glance-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
neutron-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
placement-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
vault-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
mysql-innodb-cluster:
|
||||
charm: cs:~openstack-charmers-next/mysql-innodb-cluster
|
||||
charm: ch:mysql-innodb-cluster
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
@ -47,15 +53,17 @@ applications:
|
||||
- '0'
|
||||
- '1'
|
||||
- '2'
|
||||
channel: latest/edge
|
||||
rabbitmq-server:
|
||||
charm: cs:~openstack-charmers-next/rabbitmq-server
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '3'
|
||||
channel: latest/edge
|
||||
neutron-api:
|
||||
charm: cs:~openstack-charmers-next/neutron-api
|
||||
charm: ch:neutron-api
|
||||
series: *series
|
||||
num_units: 1
|
||||
options:
|
||||
@ -68,36 +76,40 @@ applications:
|
||||
enable-dvr: True
|
||||
to:
|
||||
- '4'
|
||||
channel: yoga/edge
|
||||
keystone:
|
||||
charm: cs:~openstack-charmers-next/keystone
|
||||
charm: ch:keystone
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '5'
|
||||
channel: yoga/edge
|
||||
glance:
|
||||
charm: cs:~openstack-charmers-next/glance
|
||||
charm: ch:glance
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '6'
|
||||
channel: yoga/edge
|
||||
neutron-openvswitch:
|
||||
charm: ../../../neutron-openvswitch
|
||||
charm: ../../neutron-openvswitch.charm
|
||||
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
|
||||
charm: ch:nova-cloud-controller
|
||||
num_units: 1
|
||||
options:
|
||||
network-manager: Neutron
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '7'
|
||||
channel: yoga/edge
|
||||
nova-compute:
|
||||
charm: cs:~openstack-charmers-next/nova-compute
|
||||
charm: ch:nova-compute
|
||||
num_units: 2
|
||||
options:
|
||||
config-flags: default_ephemeral_format=ext4
|
||||
@ -108,34 +120,41 @@ applications:
|
||||
to:
|
||||
- '8'
|
||||
- '9'
|
||||
channel: yoga/edge
|
||||
placement:
|
||||
charm: cs:~openstack-charmers-next/placement
|
||||
charm: ch:placement
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '10'
|
||||
channel: yoga/edge
|
||||
vault-mysql-router:
|
||||
charm: cs:~openstack-charmers-next/mysql-router
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
vault:
|
||||
charm: cs:~openstack-charmers-next/vault
|
||||
charm: ch:vault
|
||||
num_units: 1
|
||||
to:
|
||||
- '11'
|
||||
channel: latest/edge
|
||||
ovn-central:
|
||||
charm: cs:~openstack-charmers-next/ovn-central
|
||||
charm: ch:ovn-central
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '12'
|
||||
channel: latest/edge
|
||||
neutron-api-plugin-ovn:
|
||||
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn
|
||||
charm: ch:neutron-api-plugin-ovn
|
||||
channel: yoga/edge
|
||||
ovn-chassis:
|
||||
charm: cs:~openstack-charmers-next/ovn-chassis
|
||||
charm: ch:ovn-chassis
|
||||
options:
|
||||
# start new units paused to allow unit by unit OVS to OVN migration
|
||||
new-units-paused: true
|
||||
channel: latest/edge
|
||||
relations:
|
||||
- - 'neutron-api:amqp'
|
||||
- 'rabbitmq-server:amqp'
|
||||
|
@ -6,22 +6,13 @@ charm_name: neutron-openvswitch
|
||||
# OVS to OVN.
|
||||
|
||||
smoke_bundles:
|
||||
- migrate-ovn: focal-ussuri-dvr-snat
|
||||
- migrate-ovn: focal-xena-dvr-snat
|
||||
|
||||
gate_bundles:
|
||||
- bionic-queens-dvr-snat
|
||||
- bionic-stein-dvr-snat
|
||||
- bionic-ussuri-dvr-snat
|
||||
- migrate-ovn: focal-ussuri-dvr-snat
|
||||
- migrate-ovn: focal-victoria-dvr-snat
|
||||
- migrate-ovn: focal-wallaby-dvr-snat
|
||||
- migrate-ovn: focal-xena-dvr-snat
|
||||
- migrate-ovn: hirsute-wallaby-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
|
||||
|
||||
@ -77,6 +68,5 @@ tests_options:
|
||||
# allows verifying instances survive a SDN migration.
|
||||
zaza.openstack.charm_tests.neutron.tests.NeutronNetworkingTest.test_instances_have_networking.run_resource_cleanup: false
|
||||
force_deploy:
|
||||
- hirsute-wallaby-dvr-snat
|
||||
- impish-xena-dvr-snat
|
||||
- jammy-yoga-dvr-snat
|
||||
|
12
tox.ini
12
tox.ini
@ -37,10 +37,20 @@ setenv = VIRTUAL_ENV={envdir}
|
||||
install_command =
|
||||
{toxinidir}/pip.sh install {opts} {packages}
|
||||
commands = stestr run --slowest {posargs}
|
||||
allowlist_externals = juju
|
||||
allowlist_externals =
|
||||
charmcraft
|
||||
rename.sh
|
||||
passenv = HOME TERM CS_* OS_* TEST_*
|
||||
deps = -r{toxinidir}/test-requirements.txt
|
||||
|
||||
[testenv:build]
|
||||
basepython = python3
|
||||
deps = -r{toxinidir}/build-requirements.txt
|
||||
commands =
|
||||
charmcraft clean
|
||||
charmcraft -v build
|
||||
{toxinidir}/rename.sh
|
||||
|
||||
[testenv:py35]
|
||||
basepython = python3.5
|
||||
deps = -r{toxinidir}/requirements.txt
|
||||
|
Loading…
Reference in New Issue
Block a user