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:
Alex Kavanagh 2022-01-27 15:33:27 +00:00 committed by Corey Bryant
parent f6a9487b05
commit dc8a0abddf
22 changed files with 236 additions and 1637 deletions

1
.gitignore vendored
View File

@ -6,6 +6,7 @@ bin
tags tags
*.sw[nop] *.sw[nop]
*.pyc *.pyc
*.charm
.unit-state.db .unit-state.db
.pydevproject .pydevproject
func-results.json func-results.json

7
build-requirements.txt Normal file
View 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
View 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

View File

@ -17,10 +17,7 @@ description: |
tags: tags:
- openstack - openstack
series: series:
- bionic
- focal - focal
- groovy
- hirsute
- impish - impish
extra-bindings: extra-bindings:
data: data:

View File

@ -1,103 +1,51 @@
- project: - project:
templates: templates:
- charm-yoga-unit-jobs - charm-unit-jobs-py38
- charm-unit-jobs-py39
check: check:
jobs: 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: # migrate-ovn tests fail on wallaby and above due to:
# https://bugs.launchpad.net/charm-neutron-openvswitch/+bug/1951856 # https://bugs.launchpad.net/charm-neutron-openvswitch/+bug/1951856
- migrate-ovn-focal-wallaby-dvr-snat: - migrate-ovn-focal-xena-dvr-snat
voting: false - migrate-ovn-impish-xena-dvr-snat:
- migrate-ovn-focal-xena-dvr-snat:
voting: false voting: false
- migrate-ovn-focal-yoga-dvr-snat: - migrate-ovn-focal-yoga-dvr-snat:
voting: false voting: false
- migrate-ovn-hirsute-wallaby-dvr-snat:
voting: false
- migrate-ovn-impish-xena-dvr-snat:
voting: false
- migrate-ovn-jammy-yoga-dvr-snat: - migrate-ovn-jammy-yoga-dvr-snat:
voting: false 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: - job:
name: migrate-ovn-focal-xena-dvr-snat name: migrate-ovn-focal-xena-dvr-snat
parent: func-target parent: func-target
dependencies: *smoke-jobs dependencies:
- charm-build
- osci-lint
- tox-py38
- tox-py39
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-focal-yoga-dvr-snat name: migrate-ovn-focal-yoga-dvr-snat
parent: func-target parent: func-target
dependencies: *smoke-jobs dependencies:
- migrate-ovn-focal-xena-dvr-snat
vars: vars:
tox_extra_args: migrate-ovn:focal-yoga-dvr-snat 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: - job:
name: migrate-ovn-impish-xena-dvr-snat name: migrate-ovn-impish-xena-dvr-snat
parent: func-target parent: func-target
dependencies: *smoke-jobs dependencies:
- migrate-ovn-focal-xena-dvr-snat
vars: vars:
tox_extra_args: migrate-ovn:impish-xena-dvr-snat tox_extra_args: migrate-ovn:impish-xena-dvr-snat
- job: - job:
name: migrate-ovn-jammy-yoga-dvr-snat name: migrate-ovn-jammy-yoga-dvr-snat
parent: func-target parent: func-target
dependencies: *smoke-jobs dependencies:
- migrate-ovn-focal-xena-dvr-snat
vars: vars:
tox_extra_args: migrate-ovn:jammy-yoga-dvr-snat tox_extra_args: migrate-ovn:jammy-yoga-dvr-snat

13
rename.sh Executable file
View 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

View File

@ -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. exercised in a subset of the full OpenStack deployment test bundle topology.
For full details on functional testing of OpenStack charms please refer to 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. section of the OpenStack Charm Guide.

View File

@ -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'

View File

@ -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'

View File

@ -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'

View File

@ -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'

View File

@ -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'

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -27,19 +27,25 @@ machines:
# time, given that machine "0" comes up way before machine "7" # time, given that machine "0" comes up way before machine "7"
applications: applications:
keystone-mysql-router: keystone-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
nova-mysql-router: nova-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
glance-mysql-router: glance-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
neutron-mysql-router: neutron-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
placement-mysql-router: placement-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
vault-mysql-router: vault-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
mysql-innodb-cluster: mysql-innodb-cluster:
charm: cs:~openstack-charmers-next/mysql-innodb-cluster charm: ch:mysql-innodb-cluster
num_units: 3 num_units: 3
options: options:
source: *openstack-origin source: *openstack-origin
@ -47,15 +53,17 @@ applications:
- '0' - '0'
- '1' - '1'
- '2' - '2'
channel: latest/edge
rabbitmq-server: rabbitmq-server:
charm: cs:~openstack-charmers-next/rabbitmq-server charm: ch:rabbitmq-server
num_units: 1 num_units: 1
options: options:
source: *openstack-origin source: *openstack-origin
to: to:
- '3' - '3'
channel: latest/edge
neutron-api: neutron-api:
charm: cs:~openstack-charmers-next/neutron-api charm: ch:neutron-api
series: *series series: *series
num_units: 1 num_units: 1
options: options:
@ -68,36 +76,40 @@ applications:
enable-dvr: True enable-dvr: True
to: to:
- '4' - '4'
channel: yoga/edge
keystone: keystone:
charm: cs:~openstack-charmers-next/keystone charm: ch:keystone
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '5' - '5'
channel: yoga/edge
glance: glance:
charm: cs:~openstack-charmers-next/glance charm: ch:glance
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '6' - '6'
channel: yoga/edge
neutron-openvswitch: neutron-openvswitch:
charm: ../../../neutron-openvswitch charm: ../../neutron-openvswitch.charm
options: options:
use-dvr-snat: True use-dvr-snat: True
bridge-mappings: physnet1:br-ex bridge-mappings: physnet1:br-ex
enable-local-dhcp-and-metadata: True enable-local-dhcp-and-metadata: True
nova-cloud-controller: nova-cloud-controller:
charm: cs:~openstack-charmers-next/nova-cloud-controller charm: ch:nova-cloud-controller
num_units: 1 num_units: 1
options: options:
network-manager: Neutron network-manager: Neutron
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '7' - '7'
channel: yoga/edge
nova-compute: nova-compute:
charm: cs:~openstack-charmers-next/nova-compute charm: ch:nova-compute
num_units: 2 num_units: 2
options: options:
config-flags: default_ephemeral_format=ext4 config-flags: default_ephemeral_format=ext4
@ -108,34 +120,41 @@ applications:
to: to:
- '8' - '8'
- '9' - '9'
channel: yoga/edge
placement: placement:
charm: cs:~openstack-charmers-next/placement charm: ch:placement
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '10' - '10'
channel: yoga/edge
vault-mysql-router: vault-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
vault: vault:
charm: cs:~openstack-charmers-next/vault charm: ch:vault
num_units: 1 num_units: 1
to: to:
- '11' - '11'
channel: latest/edge
ovn-central: ovn-central:
charm: cs:~openstack-charmers-next/ovn-central charm: ch:ovn-central
num_units: 3 num_units: 3
options: options:
source: *openstack-origin source: *openstack-origin
to: to:
- '12' - '12'
channel: latest/edge
neutron-api-plugin-ovn: neutron-api-plugin-ovn:
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn charm: ch:neutron-api-plugin-ovn
channel: yoga/edge
ovn-chassis: ovn-chassis:
charm: cs:~openstack-charmers-next/ovn-chassis charm: ch:ovn-chassis
options: options:
# start new units paused to allow unit by unit OVS to OVN migration # start new units paused to allow unit by unit OVS to OVN migration
new-units-paused: true new-units-paused: true
channel: latest/edge
relations: relations:
- - 'neutron-api:amqp' - - 'neutron-api:amqp'
- 'rabbitmq-server:amqp' - 'rabbitmq-server:amqp'

View File

@ -27,19 +27,25 @@ machines:
# time, given that machine "0" comes up way before machine "7" # time, given that machine "0" comes up way before machine "7"
applications: applications:
keystone-mysql-router: keystone-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
nova-mysql-router: nova-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
glance-mysql-router: glance-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
neutron-mysql-router: neutron-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
placement-mysql-router: placement-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
vault-mysql-router: vault-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
mysql-innodb-cluster: mysql-innodb-cluster:
charm: cs:~openstack-charmers-next/mysql-innodb-cluster charm: ch:mysql-innodb-cluster
num_units: 3 num_units: 3
options: options:
source: *openstack-origin source: *openstack-origin
@ -47,15 +53,17 @@ applications:
- '0' - '0'
- '1' - '1'
- '2' - '2'
channel: latest/edge
rabbitmq-server: rabbitmq-server:
charm: cs:~openstack-charmers-next/rabbitmq-server charm: ch:rabbitmq-server
num_units: 1 num_units: 1
options: options:
source: *openstack-origin source: *openstack-origin
to: to:
- '3' - '3'
channel: latest/edge
neutron-api: neutron-api:
charm: cs:~openstack-charmers-next/neutron-api charm: ch:neutron-api
series: *series series: *series
num_units: 1 num_units: 1
options: options:
@ -68,36 +76,40 @@ applications:
enable-dvr: True enable-dvr: True
to: to:
- '4' - '4'
channel: yoga/edge
keystone: keystone:
charm: cs:~openstack-charmers-next/keystone charm: ch:keystone
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '5' - '5'
channel: yoga/edge
glance: glance:
charm: cs:~openstack-charmers-next/glance charm: ch:glance
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '6' - '6'
channel: yoga/edge
neutron-openvswitch: neutron-openvswitch:
charm: ../../../neutron-openvswitch charm: ../../neutron-openvswitch.charm
options: options:
use-dvr-snat: True use-dvr-snat: True
bridge-mappings: physnet1:br-ex bridge-mappings: physnet1:br-ex
enable-local-dhcp-and-metadata: True enable-local-dhcp-and-metadata: True
nova-cloud-controller: nova-cloud-controller:
charm: cs:~openstack-charmers-next/nova-cloud-controller charm: ch:nova-cloud-controller
num_units: 1 num_units: 1
options: options:
network-manager: Neutron network-manager: Neutron
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '7' - '7'
channel: yoga/edge
nova-compute: nova-compute:
charm: cs:~openstack-charmers-next/nova-compute charm: ch:nova-compute
num_units: 2 num_units: 2
options: options:
config-flags: default_ephemeral_format=ext4 config-flags: default_ephemeral_format=ext4
@ -108,34 +120,41 @@ applications:
to: to:
- '8' - '8'
- '9' - '9'
channel: yoga/edge
placement: placement:
charm: cs:~openstack-charmers-next/placement charm: ch:placement
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '10' - '10'
channel: yoga/edge
vault-mysql-router: vault-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
vault: vault:
charm: cs:~openstack-charmers-next/vault charm: ch:vault
num_units: 1 num_units: 1
to: to:
- '11' - '11'
channel: latest/edge
ovn-central: ovn-central:
charm: cs:~openstack-charmers-next/ovn-central charm: ch:ovn-central
num_units: 3 num_units: 3
options: options:
source: *openstack-origin source: *openstack-origin
to: to:
- '12' - '12'
channel: latest/edge
neutron-api-plugin-ovn: neutron-api-plugin-ovn:
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn charm: ch:neutron-api-plugin-ovn
channel: yoga/edge
ovn-chassis: ovn-chassis:
charm: cs:~openstack-charmers-next/ovn-chassis charm: ch:ovn-chassis
options: options:
# start new units paused to allow unit by unit OVS to OVN migration # start new units paused to allow unit by unit OVS to OVN migration
new-units-paused: true new-units-paused: true
channel: latest/edge
relations: relations:
- - 'neutron-api:amqp' - - 'neutron-api:amqp'
- 'rabbitmq-server:amqp' - 'rabbitmq-server:amqp'

View File

@ -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

View File

@ -27,19 +27,25 @@ machines:
# time, given that machine "0" comes up way before machine "7" # time, given that machine "0" comes up way before machine "7"
applications: applications:
keystone-mysql-router: keystone-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
nova-mysql-router: nova-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
glance-mysql-router: glance-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
neutron-mysql-router: neutron-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
placement-mysql-router: placement-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
vault-mysql-router: vault-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
mysql-innodb-cluster: mysql-innodb-cluster:
charm: cs:~openstack-charmers-next/mysql-innodb-cluster charm: ch:mysql-innodb-cluster
num_units: 3 num_units: 3
options: options:
source: *openstack-origin source: *openstack-origin
@ -47,15 +53,17 @@ applications:
- '0' - '0'
- '1' - '1'
- '2' - '2'
channel: latest/edge
rabbitmq-server: rabbitmq-server:
charm: cs:~openstack-charmers-next/rabbitmq-server charm: ch:rabbitmq-server
num_units: 1 num_units: 1
options: options:
source: *openstack-origin source: *openstack-origin
to: to:
- '3' - '3'
channel: latest/edge
neutron-api: neutron-api:
charm: cs:~openstack-charmers-next/neutron-api charm: ch:neutron-api
series: *series series: *series
num_units: 1 num_units: 1
options: options:
@ -68,36 +76,40 @@ applications:
enable-dvr: True enable-dvr: True
to: to:
- '4' - '4'
channel: yoga/edge
keystone: keystone:
charm: cs:~openstack-charmers-next/keystone charm: ch:keystone
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '5' - '5'
channel: yoga/edge
glance: glance:
charm: cs:~openstack-charmers-next/glance charm: ch:glance
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '6' - '6'
channel: yoga/edge
neutron-openvswitch: neutron-openvswitch:
charm: ../../../neutron-openvswitch charm: ../../neutron-openvswitch.charm
options: options:
use-dvr-snat: True use-dvr-snat: True
bridge-mappings: physnet1:br-ex bridge-mappings: physnet1:br-ex
enable-local-dhcp-and-metadata: True enable-local-dhcp-and-metadata: True
nova-cloud-controller: nova-cloud-controller:
charm: cs:~openstack-charmers-next/nova-cloud-controller charm: ch:nova-cloud-controller
num_units: 1 num_units: 1
options: options:
network-manager: Neutron network-manager: Neutron
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '7' - '7'
channel: yoga/edge
nova-compute: nova-compute:
charm: cs:~openstack-charmers-next/nova-compute charm: ch:nova-compute
num_units: 2 num_units: 2
options: options:
config-flags: default_ephemeral_format=ext4 config-flags: default_ephemeral_format=ext4
@ -108,34 +120,41 @@ applications:
to: to:
- '8' - '8'
- '9' - '9'
channel: yoga/edge
placement: placement:
charm: cs:~openstack-charmers-next/placement charm: ch:placement
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '10' - '10'
channel: yoga/edge
vault-mysql-router: vault-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
vault: vault:
charm: cs:~openstack-charmers-next/vault charm: ch:vault
num_units: 1 num_units: 1
to: to:
- '11' - '11'
channel: latest/edge
ovn-central: ovn-central:
charm: cs:~openstack-charmers-next/ovn-central charm: ch:ovn-central
num_units: 3 num_units: 3
options: options:
source: *openstack-origin source: *openstack-origin
to: to:
- '12' - '12'
channel: latest/edge
neutron-api-plugin-ovn: neutron-api-plugin-ovn:
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn charm: ch:neutron-api-plugin-ovn
channel: yoga/edge
ovn-chassis: ovn-chassis:
charm: cs:~openstack-charmers-next/ovn-chassis charm: ch:ovn-chassis
options: options:
# start new units paused to allow unit by unit OVS to OVN migration # start new units paused to allow unit by unit OVS to OVN migration
new-units-paused: true new-units-paused: true
channel: latest/edge
relations: relations:
- - 'neutron-api:amqp' - - 'neutron-api:amqp'
- 'rabbitmq-server:amqp' - 'rabbitmq-server:amqp'

View File

@ -27,19 +27,25 @@ machines:
# time, given that machine "0" comes up way before machine "7" # time, given that machine "0" comes up way before machine "7"
applications: applications:
keystone-mysql-router: keystone-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
nova-mysql-router: nova-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
glance-mysql-router: glance-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
neutron-mysql-router: neutron-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
placement-mysql-router: placement-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
vault-mysql-router: vault-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
mysql-innodb-cluster: mysql-innodb-cluster:
charm: cs:~openstack-charmers-next/mysql-innodb-cluster charm: ch:mysql-innodb-cluster
num_units: 3 num_units: 3
options: options:
source: *openstack-origin source: *openstack-origin
@ -47,15 +53,17 @@ applications:
- '0' - '0'
- '1' - '1'
- '2' - '2'
channel: latest/edge
rabbitmq-server: rabbitmq-server:
charm: cs:~openstack-charmers-next/rabbitmq-server charm: ch:rabbitmq-server
num_units: 1 num_units: 1
options: options:
source: *openstack-origin source: *openstack-origin
to: to:
- '3' - '3'
channel: latest/edge
neutron-api: neutron-api:
charm: cs:~openstack-charmers-next/neutron-api charm: ch:neutron-api
series: *series series: *series
num_units: 1 num_units: 1
options: options:
@ -68,36 +76,40 @@ applications:
enable-dvr: True enable-dvr: True
to: to:
- '4' - '4'
channel: yoga/edge
keystone: keystone:
charm: cs:~openstack-charmers-next/keystone charm: ch:keystone
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '5' - '5'
channel: yoga/edge
glance: glance:
charm: cs:~openstack-charmers-next/glance charm: ch:glance
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '6' - '6'
channel: yoga/edge
neutron-openvswitch: neutron-openvswitch:
charm: ../../../neutron-openvswitch charm: ../../neutron-openvswitch.charm
options: options:
use-dvr-snat: True use-dvr-snat: True
bridge-mappings: physnet1:br-ex bridge-mappings: physnet1:br-ex
enable-local-dhcp-and-metadata: True enable-local-dhcp-and-metadata: True
nova-cloud-controller: nova-cloud-controller:
charm: cs:~openstack-charmers-next/nova-cloud-controller charm: ch:nova-cloud-controller
num_units: 1 num_units: 1
options: options:
network-manager: Neutron network-manager: Neutron
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '7' - '7'
channel: yoga/edge
nova-compute: nova-compute:
charm: cs:~openstack-charmers-next/nova-compute charm: ch:nova-compute
num_units: 2 num_units: 2
options: options:
config-flags: default_ephemeral_format=ext4 config-flags: default_ephemeral_format=ext4
@ -108,34 +120,41 @@ applications:
to: to:
- '8' - '8'
- '9' - '9'
channel: yoga/edge
placement: placement:
charm: cs:~openstack-charmers-next/placement charm: ch:placement
num_units: 1 num_units: 1
options: options:
openstack-origin: *openstack-origin openstack-origin: *openstack-origin
to: to:
- '10' - '10'
channel: yoga/edge
vault-mysql-router: vault-mysql-router:
charm: cs:~openstack-charmers-next/mysql-router charm: ch:mysql-router
channel: latest/edge
vault: vault:
charm: cs:~openstack-charmers-next/vault charm: ch:vault
num_units: 1 num_units: 1
to: to:
- '11' - '11'
channel: latest/edge
ovn-central: ovn-central:
charm: cs:~openstack-charmers-next/ovn-central charm: ch:ovn-central
num_units: 3 num_units: 3
options: options:
source: *openstack-origin source: *openstack-origin
to: to:
- '12' - '12'
channel: latest/edge
neutron-api-plugin-ovn: neutron-api-plugin-ovn:
charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn charm: ch:neutron-api-plugin-ovn
channel: yoga/edge
ovn-chassis: ovn-chassis:
charm: cs:~openstack-charmers-next/ovn-chassis charm: ch:ovn-chassis
options: options:
# start new units paused to allow unit by unit OVS to OVN migration # start new units paused to allow unit by unit OVS to OVN migration
new-units-paused: true new-units-paused: true
channel: latest/edge
relations: relations:
- - 'neutron-api:amqp' - - 'neutron-api:amqp'
- 'rabbitmq-server:amqp' - 'rabbitmq-server:amqp'

View File

@ -6,22 +6,13 @@ charm_name: neutron-openvswitch
# OVS to OVN. # OVS to OVN.
smoke_bundles: smoke_bundles:
- migrate-ovn: focal-ussuri-dvr-snat - migrate-ovn: focal-xena-dvr-snat
gate_bundles: 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: focal-xena-dvr-snat
- migrate-ovn: hirsute-wallaby-dvr-snat
- migrate-ovn: impish-xena-dvr-snat - migrate-ovn: impish-xena-dvr-snat
dev_bundles: dev_bundles:
- bionic-rocky-dvr-snat
- bionic-train-dvr-snat
- migrate-ovn: focal-yoga-dvr-snat - migrate-ovn: focal-yoga-dvr-snat
- migrate-ovn: jammy-yoga-dvr-snat - migrate-ovn: jammy-yoga-dvr-snat
@ -77,6 +68,5 @@ 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:
- hirsute-wallaby-dvr-snat
- impish-xena-dvr-snat - impish-xena-dvr-snat
- jammy-yoga-dvr-snat - jammy-yoga-dvr-snat

12
tox.ini
View File

@ -37,10 +37,20 @@ setenv = VIRTUAL_ENV={envdir}
install_command = install_command =
{toxinidir}/pip.sh install {opts} {packages} {toxinidir}/pip.sh install {opts} {packages}
commands = stestr run --slowest {posargs} commands = stestr run --slowest {posargs}
allowlist_externals = juju allowlist_externals =
charmcraft
rename.sh
passenv = HOME TERM CS_* OS_* TEST_* passenv = HOME TERM CS_* OS_* TEST_*
deps = -r{toxinidir}/test-requirements.txt 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] [testenv:py35]
basepython = python3.5 basepython = python3.5
deps = -r{toxinidir}/requirements.txt deps = -r{toxinidir}/requirements.txt