Fix missing dependency on bionic

Without this, the install hook will fail on bionic with
ModuleNotFoundError: No module named 'importlib_resources'

Change-Id: I889b1d0dad15e36a1e06b1436f3632ed6c6233ea
This commit is contained in:
Aurelien Lourot 2022-03-03 15:14:06 +01:00
parent 7c4fcad4a4
commit 18d0d5e625
11 changed files with 954 additions and 1 deletions

View File

@ -29,6 +29,8 @@ bases:
- ppc64el
- arm64
run-on:
- name: ubuntu
channel: "18.04"
- name: ubuntu
channel: "20.04"
- name: ubuntu

View File

@ -8,6 +8,7 @@ description: |
tags:
- openstack
series:
- bionic
- focal
- impish
subordinate: true

View File

@ -13,6 +13,8 @@
- focal-wallaby-nvidia-vgpu
- focal-victoria-nvidia-vgpu
- focal-ussuri-nvidia-vgpu
- bionic-ussuri-nvidia-vgpu
- bionic-queens-nvidia-vgpu
vars:
needs_charm_build: true
charm_build_name: nova-compute-nvidia-vgpu
@ -79,3 +81,17 @@
soft: true
vars:
tox_extra_args: focal-ussuri
- job:
name: bionic-ussuri-nvidia-vgpu
description: Run a functional test against bionic-ussuri
parent: func-target
dependencies: *smoke-jobs
vars:
tox_extra_args: bionic-ussuri
- job:
name: bionic-queens-nvidia-vgpu
description: Run a functional test against bionic-queens
parent: func-target
dependencies: *smoke-jobs
vars:
tox_extra_args: bionic-queens

View File

@ -1,3 +1,4 @@
importlib-resources
ops
git+https://opendev.org/openstack/charm-ops-openstack#egg=ops_openstack

View File

@ -0,0 +1,178 @@
local_overlay_enabled: False
variables:
openstack-origin: &openstack-origin distro
series: bionic
comment:
- 'machines section to decide order of deployment. database sooner = faster'
machines:
'0':
constraints: mem=3072M
'1':
'2':
constraints: mem=4096M
'3':
'4':
'5':
'6':
'7':
constraints: mem=4096M cores=4
applications:
percona-cluster:
charm: ch:percona-cluster
num_units: 1
options:
max-connections: 1000
innodb-buffer-pool-size: 256M
to:
- '0'
channel: 5.7/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
options:
source: *openstack-origin
to:
- '1'
channel: 3.6/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
num_units: 1
options:
openstack-origin: *openstack-origin
network-manager: Neutron
debug: true
to:
- '2'
channel: queens/edge
neutron-api:
charm: ch:neutron-api
num_units: 1
options:
manage-neutron-plugin-legacy-mode: true
openstack-origin: *openstack-origin
flat-network-providers: physnet1
neutron-security-groups: true
to:
- '3'
channel: queens/edge
keystone:
charm: ch:keystone
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '4'
channel: queens/edge
neutron-gateway:
charm: ch:neutron-gateway
num_units: 1
options:
openstack-origin: *openstack-origin
bridge-mappings: physnet1:br-ex
to:
- '5'
channel: queens/edge
glance:
charm: ch:glance
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '6'
channel: queens/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: queens/edge
nova-compute:
charm: ch:nova-compute
num_units: 1
storage:
ephemeral-device: '40G'
options:
openstack-origin: *openstack-origin
config-flags: auto_assign_floating_ip=False
enable-live-migration: false
aa-profile-mode: enforce
debug: true
to:
- '7'
channel: queens/edge
nova-compute-nvidia-vgpu:
charm: ../../nova-compute-nvidia-vgpu.charm
options:
vgpu-device-mappings: "{'nvidia-108': ['0000:c1:00.0']}"
relations:
- - 'nova-compute:image-service'
- 'glance:image-service'
- - 'nova-compute:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:shared-db'
- 'percona-cluster:shared-db'
- - 'nova-cloud-controller:identity-service'
- 'keystone:identity-service'
- - 'nova-cloud-controller:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:cloud-compute'
- 'nova-compute:cloud-compute'
- - 'nova-cloud-controller:image-service'
- 'glance:image-service'
- - 'keystone:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:identity-service'
- 'keystone:identity-service'
- - 'glance:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:amqp'
- 'rabbitmq-server:amqp'
- - 'neutron-gateway:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:quantum-network-service'
- 'neutron-gateway:quantum-network-service'
- - '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'
- - 'nova-compute:neutron-plugin'
- 'neutron-openvswitch:neutron-plugin'
- - 'rabbitmq-server:amqp'
- 'neutron-openvswitch:amqp'
- - 'nova-compute:nova-vgpu'
- 'nova-compute-nvidia-vgpu:nova-vgpu'

View File

@ -0,0 +1,178 @@
local_overlay_enabled: False
variables:
openstack-origin: &openstack-origin cloud:bionic-rocky
series: bionic
comment:
- 'machines section to decide order of deployment. database sooner = faster'
machines:
'0':
constraints: mem=3072M
'1':
'2':
constraints: mem=4096M
'3':
'4':
'5':
'6':
'7':
constraints: mem=4096M cores=4
applications:
percona-cluster:
charm: ch:percona-cluster
num_units: 1
options:
max-connections: 1000
innodb-buffer-pool-size: 256M
to:
- '0'
channel: 5.7/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
options:
source: *openstack-origin
to:
- '1'
channel: 3.6/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
num_units: 1
options:
openstack-origin: *openstack-origin
network-manager: Neutron
debug: true
to:
- '2'
channel: rocky/edge
neutron-api:
charm: ch:neutron-api
num_units: 1
options:
manage-neutron-plugin-legacy-mode: true
openstack-origin: *openstack-origin
flat-network-providers: physnet1
neutron-security-groups: true
to:
- '3'
channel: rocky/edge
keystone:
charm: ch:keystone
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '4'
channel: rocky/edge
neutron-gateway:
charm: ch:neutron-gateway
num_units: 1
options:
openstack-origin: *openstack-origin
bridge-mappings: physnet1:br-ex
to:
- '5'
channel: rocky/edge
glance:
charm: ch:glance
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '6'
channel: rocky/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: rocky/edge
nova-compute:
charm: ch:nova-compute
num_units: 1
storage:
ephemeral-device: '40G'
options:
openstack-origin: *openstack-origin
config-flags: auto_assign_floating_ip=False
enable-live-migration: false
aa-profile-mode: enforce
debug: true
to:
- '7'
channel: rocky/edge
nova-compute-nvidia-vgpu:
charm: ../../nova-compute-nvidia-vgpu.charm
options:
vgpu-device-mappings: "{'nvidia-108': ['0000:c1:00.0']}"
relations:
- - 'nova-compute:image-service'
- 'glance:image-service'
- - 'nova-compute:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:shared-db'
- 'percona-cluster:shared-db'
- - 'nova-cloud-controller:identity-service'
- 'keystone:identity-service'
- - 'nova-cloud-controller:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:cloud-compute'
- 'nova-compute:cloud-compute'
- - 'nova-cloud-controller:image-service'
- 'glance:image-service'
- - 'keystone:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:identity-service'
- 'keystone:identity-service'
- - 'glance:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:amqp'
- 'rabbitmq-server:amqp'
- - 'neutron-gateway:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:quantum-network-service'
- 'neutron-gateway:quantum-network-service'
- - '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'
- - 'nova-compute:neutron-plugin'
- 'neutron-openvswitch:neutron-plugin'
- - 'rabbitmq-server:amqp'
- 'neutron-openvswitch:amqp'
- - 'nova-compute:nova-vgpu'
- 'nova-compute-nvidia-vgpu:nova-vgpu'

View File

@ -0,0 +1,178 @@
local_overlay_enabled: False
variables:
openstack-origin: &openstack-origin cloud:bionic-stein
series: bionic
comment:
- 'machines section to decide order of deployment. database sooner = faster'
machines:
'0':
constraints: mem=3072M
'1':
'2':
constraints: mem=4096M
'3':
'4':
'5':
'6':
'7':
constraints: mem=4096M cores=4
applications:
percona-cluster:
charm: ch:percona-cluster
num_units: 1
options:
max-connections: 1000
innodb-buffer-pool-size: 256M
to:
- '0'
channel: 5.7/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
options:
source: *openstack-origin
to:
- '1'
channel: 3.6/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
num_units: 1
options:
openstack-origin: *openstack-origin
network-manager: Neutron
debug: true
to:
- '2'
channel: stein/edge
neutron-api:
charm: ch:neutron-api
num_units: 1
options:
manage-neutron-plugin-legacy-mode: true
openstack-origin: *openstack-origin
flat-network-providers: physnet1
neutron-security-groups: true
to:
- '3'
channel: stein/edge
keystone:
charm: ch:keystone
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '4'
channel: stein/edge
neutron-gateway:
charm: ch:neutron-gateway
num_units: 1
options:
openstack-origin: *openstack-origin
bridge-mappings: physnet1:br-ex
to:
- '5'
channel: stein/edge
glance:
charm: ch:glance
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '6'
channel: stein/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: stein/edge
nova-compute:
charm: ch:nova-compute
num_units: 1
storage:
ephemeral-device: '40G'
options:
openstack-origin: *openstack-origin
config-flags: auto_assign_floating_ip=False
enable-live-migration: false
aa-profile-mode: enforce
debug: true
to:
- '7'
channel: stein/edge
nova-compute-nvidia-vgpu:
charm: ../../nova-compute-nvidia-vgpu.charm
options:
vgpu-device-mappings: "{'nvidia-108': ['0000:c1:00.0']}"
relations:
- - 'nova-compute:image-service'
- 'glance:image-service'
- - 'nova-compute:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:shared-db'
- 'percona-cluster:shared-db'
- - 'nova-cloud-controller:identity-service'
- 'keystone:identity-service'
- - 'nova-cloud-controller:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:cloud-compute'
- 'nova-compute:cloud-compute'
- - 'nova-cloud-controller:image-service'
- 'glance:image-service'
- - 'keystone:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:identity-service'
- 'keystone:identity-service'
- - 'glance:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:amqp'
- 'rabbitmq-server:amqp'
- - 'neutron-gateway:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:quantum-network-service'
- 'neutron-gateway:quantum-network-service'
- - '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'
- - 'nova-compute:neutron-plugin'
- 'neutron-openvswitch:neutron-plugin'
- - 'rabbitmq-server:amqp'
- 'neutron-openvswitch:amqp'
- - 'nova-compute:nova-vgpu'
- 'nova-compute-nvidia-vgpu:nova-vgpu'

View File

@ -0,0 +1,197 @@
local_overlay_enabled: False
variables:
openstack-origin: &openstack-origin cloud:bionic-train
series: bionic
comment:
- 'machines section to decide order of deployment. database sooner = faster'
machines:
'0':
constraints: mem=3072M
'1':
'2':
constraints: mem=4096M
'3':
'4':
'5':
'6':
'7':
'8':
constraints: mem=4096M cores=4
applications:
percona-cluster:
charm: ch:percona-cluster
num_units: 1
options:
max-connections: 1000
innodb-buffer-pool-size: 256M
to:
- '0'
channel: 5.7/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
options:
source: *openstack-origin
to:
- '1'
channel: 3.6/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
num_units: 1
options:
openstack-origin: *openstack-origin
network-manager: Neutron
debug: true
to:
- '2'
channel: train/edge
neutron-api:
charm: ch:neutron-api
num_units: 1
options:
manage-neutron-plugin-legacy-mode: true
openstack-origin: *openstack-origin
flat-network-providers: physnet1
neutron-security-groups: true
to:
- '3'
channel: train/edge
keystone:
charm: ch:keystone
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '4'
channel: train/edge
neutron-gateway:
charm: ch:neutron-gateway
num_units: 1
options:
openstack-origin: *openstack-origin
bridge-mappings: physnet1:br-ex
to:
- '5'
channel: train/edge
glance:
charm: ch:glance
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '6'
channel: train/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: train/edge
placement:
charm: ch:placement
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '7'
channel: train/edge
nova-compute:
charm: ch:nova-compute
num_units: 1
storage:
ephemeral-device: '40G'
options:
openstack-origin: *openstack-origin
config-flags: auto_assign_floating_ip=False
enable-live-migration: false
aa-profile-mode: enforce
debug: true
to:
- '8'
channel: train/edge
nova-compute-nvidia-vgpu:
charm: ../../nova-compute-nvidia-vgpu.charm
options:
vgpu-device-mappings: "{'nvidia-108': ['0000:c1:00.0']}"
relations:
- - 'nova-compute:image-service'
- 'glance:image-service'
- - 'nova-compute:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:shared-db'
- 'percona-cluster:shared-db'
- - 'nova-cloud-controller:identity-service'
- 'keystone:identity-service'
- - 'nova-cloud-controller:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:cloud-compute'
- 'nova-compute:cloud-compute'
- - 'nova-cloud-controller:image-service'
- 'glance:image-service'
- - 'keystone:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:identity-service'
- 'keystone:identity-service'
- - 'glance:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:amqp'
- 'rabbitmq-server:amqp'
- - 'neutron-gateway:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:quantum-network-service'
- 'neutron-gateway:quantum-network-service'
- - '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'
- - 'nova-compute:neutron-plugin'
- 'neutron-openvswitch:neutron-plugin'
- - 'rabbitmq-server:amqp'
- 'neutron-openvswitch:amqp'
- - 'placement:shared-db'
- 'percona-cluster:shared-db'
- - 'placement:identity-service'
- 'keystone:identity-service'
- - 'placement:placement'
- 'nova-cloud-controller:placement'
- - 'nova-compute:nova-vgpu'
- 'nova-compute-nvidia-vgpu:nova-vgpu'

View File

@ -0,0 +1,197 @@
local_overlay_enabled: False
variables:
openstack-origin: &openstack-origin cloud:bionic-ussuri
series: bionic
comment:
- 'machines section to decide order of deployment. database sooner = faster'
machines:
'0':
constraints: mem=3072M
'1':
'2':
constraints: mem=4096M
'3':
'4':
'5':
'6':
'7':
'8':
constraints: mem=4096M cores=4
applications:
percona-cluster:
charm: ch:percona-cluster
num_units: 1
options:
max-connections: 1000
innodb-buffer-pool-size: 256M
to:
- '0'
channel: 5.7/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
options:
source: *openstack-origin
to:
- '1'
channel: 3.6/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
num_units: 1
options:
openstack-origin: *openstack-origin
network-manager: Neutron
debug: true
to:
- '2'
channel: ussuri/edge
neutron-api:
charm: ch:neutron-api
num_units: 1
options:
manage-neutron-plugin-legacy-mode: true
openstack-origin: *openstack-origin
flat-network-providers: physnet1
neutron-security-groups: true
to:
- '3'
channel: ussuri/edge
keystone:
charm: ch:keystone
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '4'
channel: ussuri/edge
neutron-gateway:
charm: ch:neutron-gateway
num_units: 1
options:
openstack-origin: *openstack-origin
bridge-mappings: physnet1:br-ex
to:
- '5'
channel: ussuri/edge
glance:
charm: ch:glance
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '6'
channel: ussuri/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: ussuri/edge
placement:
charm: ch:placement
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '7'
channel: ussuri/edge
nova-compute:
charm: ch:nova-compute
num_units: 1
storage:
ephemeral-device: '40G'
options:
openstack-origin: *openstack-origin
config-flags: auto_assign_floating_ip=False
enable-live-migration: false
aa-profile-mode: enforce
debug: true
to:
- '8'
channel: ussuri/edge
nova-compute-nvidia-vgpu:
charm: ../../nova-compute-nvidia-vgpu.charm
options:
vgpu-device-mappings: "{'nvidia-108': ['0000:c1:00.0']}"
relations:
- - 'nova-compute:image-service'
- 'glance:image-service'
- - 'nova-compute:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:shared-db'
- 'percona-cluster:shared-db'
- - 'nova-cloud-controller:identity-service'
- 'keystone:identity-service'
- - 'nova-cloud-controller:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:cloud-compute'
- 'nova-compute:cloud-compute'
- - 'nova-cloud-controller:image-service'
- 'glance:image-service'
- - 'keystone:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:identity-service'
- 'keystone:identity-service'
- - 'glance:shared-db'
- 'percona-cluster:shared-db'
- - 'glance:amqp'
- 'rabbitmq-server:amqp'
- - 'neutron-gateway:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:quantum-network-service'
- 'neutron-gateway:quantum-network-service'
- - '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'
- - 'nova-compute:neutron-plugin'
- 'neutron-openvswitch:neutron-plugin'
- - 'rabbitmq-server:amqp'
- 'neutron-openvswitch:amqp'
- - 'placement:shared-db'
- 'percona-cluster:shared-db'
- - 'placement:identity-service'
- 'keystone:identity-service'
- - 'placement:placement'
- 'nova-cloud-controller:placement'
- - 'nova-compute:nova-vgpu'
- 'nova-compute-nvidia-vgpu:nova-vgpu'

View File

@ -4,6 +4,8 @@ smoke_bundles:
- focal-ussuri
gate_bundles:
- bionic-queens
- bionic-ussuri
- focal-ussuri
- focal-victoria
- focal-wallaby
@ -12,6 +14,9 @@ gate_bundles:
- impish-xena
dev_bundles:
- bionic-rocky
- bionic-stein
- bionic-train
- jammy-yoga
configure:

View File

@ -41,7 +41,7 @@ deps = -r{toxinidir}/test-requirements.txt
[testenv:py35]
basepython = python3.5
# python3.5 is irrelevant on a focal+ charm.
# python3.5 is irrelevant on a bionic+ charm.
commands = /bin/true
[testenv:py36]