Add charmcraft 3 support
Update the charmcraft.yaml file to use base and platforms, only allowing noble support. Remove test bundles for older bases. Also modernize build process using the reactive plugin, and modernize tox.ini, update build.lock pins and remove cruft. Change-Id: I5a2a5cf200c32823c7d2a83b8f6afbcddb8cacc9 func-test-pr: https://github.com/openstack-charmers/zaza-openstack-tests/pull/1255
This commit is contained in:
parent
881e21bdc1
commit
3346ed23cd
@ -2,28 +2,33 @@ type: charm
|
||||
|
||||
parts:
|
||||
charm:
|
||||
source: src/
|
||||
plugin: reactive
|
||||
build-snaps:
|
||||
- charm
|
||||
reactive-charm-build-arguments:
|
||||
- --binary-wheels-from-source
|
||||
build-packages:
|
||||
- tox
|
||||
- git
|
||||
- python3-dev
|
||||
- libffi-dev
|
||||
source: src/
|
||||
build-snaps:
|
||||
- charm/latest/edge
|
||||
build-environment:
|
||||
- CHARM_INTERFACES_DIR: /root/project/interfaces/
|
||||
- CHARM_LAYERS_DIR: /root/project/layers/
|
||||
- CHARM_INTERFACES_DIR: $CRAFT_PROJECT_DIR/interfaces/
|
||||
- CHARM_LAYERS_DIR: $CRAFT_PROJECT_DIR/layers/
|
||||
|
||||
bases:
|
||||
- build-on:
|
||||
- name: ubuntu
|
||||
channel: "20.04"
|
||||
architectures:
|
||||
- amd64
|
||||
run-on:
|
||||
- name: ubuntu
|
||||
channel: "20.04"
|
||||
architectures: [amd64, s390x, ppc64el, arm64]
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [amd64, s390x, ppc64el, arm64]
|
||||
base: ubuntu@24.04
|
||||
build-base: ubuntu@24.04
|
||||
platforms:
|
||||
amd64:
|
||||
build-on: amd64
|
||||
build-for: amd64
|
||||
arm64:
|
||||
build-on: arm64
|
||||
build-for: arm64
|
||||
s390x:
|
||||
build-on: s390x
|
||||
build-for: s390x
|
||||
ppc64el:
|
||||
build-on: ppc64el
|
||||
build-for: ppc64el
|
||||
|
@ -7,4 +7,4 @@
|
||||
needs_charm_build: true
|
||||
charm_build_name: ceph-rbd-mirror
|
||||
build_type: charmcraft
|
||||
charmcraft_channel: 2.x/stable
|
||||
charmcraft_channel: 3.x/beta
|
||||
|
@ -1,13 +1,3 @@
|
||||
# This file is managed centrally by release-tools and should not be modified
|
||||
# within individual charm repos. See the 'global' dir contents for available
|
||||
# choices of *requirements.txt files for OpenStack Charms:
|
||||
# https://github.com/openstack-charmers/release-tools
|
||||
#
|
||||
# NOTE(lourot): This might look like a duplication of test-requirements.txt but
|
||||
# some tox targets use only test-requirements.txt whereas charm-build uses only
|
||||
# requirements.txt
|
||||
setuptools<50.0.0 # https://github.com/pypa/setuptools/commit/04e3df22df840c6bb244e9b27bc56750c44b7c85
|
||||
|
||||
# NOTE: newer versions of cryptography require a Rust compiler to build,
|
||||
# see
|
||||
# * https://github.com/openstack-charmers/zaza/issues/421
|
||||
|
264
src/build.lock
Normal file
264
src/build.lock
Normal file
@ -0,0 +1,264 @@
|
||||
{
|
||||
"locks": [
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "layer:leadership",
|
||||
"url": "https://git.launchpad.net/layer-leadership",
|
||||
"vcs": null,
|
||||
"branch": "cc5bd3f49b2fa5e6c3ab2336763c313ec8bf083f",
|
||||
"commit": "cc5bd3f49b2fa5e6c3ab2336763c313ec8bf083f"
|
||||
},
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "layer:options",
|
||||
"url": "https://github.com/juju-solutions/layer-options.git",
|
||||
"vcs": null,
|
||||
"branch": "fcdcea4e5de3e1556c24e6704607862d0ba00a56",
|
||||
"commit": "fcdcea4e5de3e1556c24e6704607862d0ba00a56"
|
||||
},
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "layer:basic",
|
||||
"url": "https://github.com/juju-solutions/layer-basic.git",
|
||||
"vcs": null,
|
||||
"branch": "24324f8dab91bb304f7400dadc263ac6106268cb",
|
||||
"commit": "24324f8dab91bb304f7400dadc263ac6106268cb"
|
||||
},
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "layer:openstack",
|
||||
"url": "https://github.com/openstack/charm-layer-openstack",
|
||||
"vcs": null,
|
||||
"branch": "7c671b0696977f455616565d956895b2f890464b",
|
||||
"commit": "7c671b0696977f455616565d956895b2f890464b"
|
||||
},
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "layer:ceph",
|
||||
"url": "https://github.com/openstack/charm-layer-ceph.git",
|
||||
"vcs": null,
|
||||
"branch": "17d40abd8d9ec3b8c32756ca981c80c4733c016f",
|
||||
"commit": "17d40abd8d9ec3b8c32756ca981c80c4733c016f"
|
||||
},
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "ceph-rbd-mirror",
|
||||
"url": null,
|
||||
"vcs": null,
|
||||
"branch": "881e21bdc16cecd62c1c2d9ba470c5f4ee600fdc",
|
||||
"commit": "881e21bdc16cecd62c1c2d9ba470c5f4ee600fdc"
|
||||
},
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "interface:tls-certificates",
|
||||
"url": "https://github.com/juju-solutions/interface-tls-certificates",
|
||||
"vcs": null,
|
||||
"branch": "da891c403864482688ec767a964218e5857f0e49",
|
||||
"commit": "da891c403864482688ec767a964218e5857f0e49"
|
||||
},
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "interface:ceph-rbd-mirror",
|
||||
"url": "https://github.com/openstack/charm-interface-ceph-rbd-mirror.git",
|
||||
"vcs": null,
|
||||
"branch": "d746757302beb385384f9c647afe68ce764bb3b7",
|
||||
"commit": "d746757302beb385384f9c647afe68ce764bb3b7"
|
||||
},
|
||||
{
|
||||
"type": "layer",
|
||||
"item": "interface:nrpe-external-master",
|
||||
"url": "https://github.com/canonical/nrpe-external-master-interface",
|
||||
"vcs": null,
|
||||
"branch": "c58fe7b01a151d933681b5bf67e47ad3de65eeaa",
|
||||
"commit": "c58fe7b01a151d933681b5bf67e47ad3de65eeaa"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "pip",
|
||||
"vcs": null,
|
||||
"version": "22.0.4"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "flit_scm",
|
||||
"vcs": null,
|
||||
"version": "1.7.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "setuptools_scm",
|
||||
"vcs": null,
|
||||
"version": "6.4.2"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "MarkupSafe",
|
||||
"vcs": null,
|
||||
"version": "2.1.5"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "pluggy",
|
||||
"vcs": null,
|
||||
"version": "1.5.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "calver",
|
||||
"vcs": null,
|
||||
"version": "2022.6.26"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "Cython",
|
||||
"vcs": null,
|
||||
"version": "0.29.37"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "charms.reactive",
|
||||
"url": "git+https://github.com/canonical/charms.reactive.git",
|
||||
"branch": "f7debc39e623a3a73673ba1f7e4cb5bc7ae9ecd9",
|
||||
"version": "f7debc39e623a3a73673ba1f7e4cb5bc7ae9ecd9",
|
||||
"vcs": "git"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "packaging",
|
||||
"vcs": null,
|
||||
"version": "24.1"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "pyudev",
|
||||
"vcs": null,
|
||||
"version": "0.24.3"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "hatchling",
|
||||
"vcs": null,
|
||||
"version": "1.25.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "pathspec",
|
||||
"vcs": null,
|
||||
"version": "0.12.1"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "sniffio",
|
||||
"vcs": null,
|
||||
"version": "1.3.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "charms.ceph",
|
||||
"url": "git+https://github.com/openstack/charms.ceph.git",
|
||||
"branch": "64f3c1b12b14545a76321469478fb456b379832d",
|
||||
"version": "64f3c1b12b14545a76321469478fb456b379832d",
|
||||
"vcs": "git"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "pbr",
|
||||
"vcs": null,
|
||||
"version": "6.0.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "dnspython",
|
||||
"vcs": null,
|
||||
"version": "2.6.1"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "anyio",
|
||||
"vcs": null,
|
||||
"version": "3.6.2"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "netaddr",
|
||||
"vcs": null,
|
||||
"version": "0.7.19"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "tomli",
|
||||
"vcs": null,
|
||||
"version": "2.0.1"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "PyYAML",
|
||||
"vcs": null,
|
||||
"version": "6.0.1"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "charmhelpers",
|
||||
"url": "git+https://github.com/juju/charm-helpers.git",
|
||||
"branch": "1b2d4dc8f8effd79d782241a32a0485af1f01e73",
|
||||
"version": "1b2d4dc8f8effd79d782241a32a0485af1f01e73",
|
||||
"vcs": "git"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "idna",
|
||||
"vcs": null,
|
||||
"version": "3.7"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "psutil",
|
||||
"vcs": null,
|
||||
"version": "6.0.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "pyaml",
|
||||
"vcs": null,
|
||||
"version": "21.10.1"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "netifaces",
|
||||
"vcs": null,
|
||||
"version": "0.11.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "flit_core",
|
||||
"vcs": null,
|
||||
"version": "3.9.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "trove_classifiers",
|
||||
"vcs": null,
|
||||
"version": "2024.7.2"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "wheel",
|
||||
"vcs": null,
|
||||
"version": "0.43.0"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "charms.openstack",
|
||||
"url": "git+https://github.com/openstack/charms.openstack.git",
|
||||
"branch": "355d65f64cc1dac133d885aa7cfc58b1804a0c30",
|
||||
"version": "355d65f64cc1dac133d885aa7cfc58b1804a0c30",
|
||||
"vcs": "git"
|
||||
},
|
||||
{
|
||||
"type": "python_module",
|
||||
"package": "jinja2",
|
||||
"vcs": null,
|
||||
"version": "3.1.4"
|
||||
}
|
||||
]
|
||||
}
|
@ -16,8 +16,7 @@ tags:
|
||||
- file-servers
|
||||
- misc
|
||||
series:
|
||||
- focal
|
||||
- jammy
|
||||
- noble
|
||||
extra-bindings:
|
||||
public:
|
||||
cluster:
|
||||
|
@ -1,187 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:focal-yoga
|
||||
|
||||
local_overlay_enabled: False
|
||||
|
||||
series: &series focal
|
||||
|
||||
machines:
|
||||
'0':
|
||||
constraints: "mem=3072M"
|
||||
'1':
|
||||
constraints: "mem=3072M"
|
||||
'2':
|
||||
constraints: "mem=3072M"
|
||||
|
||||
applications:
|
||||
|
||||
keystone-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
glance-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
cinder-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
|
||||
mysql-innodb-cluster:
|
||||
charm: ch:mysql-innodb-cluster
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '0'
|
||||
- '1'
|
||||
- '2'
|
||||
channel: latest/edge
|
||||
|
||||
keystone:
|
||||
charm: ch:keystone
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: yoga/edge
|
||||
|
||||
rabbitmq-server:
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
channel: latest/edge
|
||||
|
||||
cinder:
|
||||
charm: ch:cinder
|
||||
num_units: 1
|
||||
options:
|
||||
block-device: None
|
||||
glance-api-version: 2
|
||||
openstack-origin: *openstack-origin
|
||||
channel: yoga/edge
|
||||
|
||||
cinder-ceph:
|
||||
charm: ch:cinder-ceph
|
||||
num_units: 0
|
||||
channel: yoga/edge
|
||||
|
||||
glance:
|
||||
charm: ch:glance
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: yoga/edge
|
||||
|
||||
nova-compute:
|
||||
charm: ch:nova-compute
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: yoga/edge
|
||||
|
||||
ceph-mon:
|
||||
charm: ch:ceph-mon
|
||||
num_units: 3
|
||||
options:
|
||||
expected-osd-count: 3
|
||||
source: *openstack-origin
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-osd:
|
||||
charm: ch:ceph-osd
|
||||
num_units: 3
|
||||
storage:
|
||||
osd-devices: 'cinder,10G'
|
||||
options:
|
||||
source: *openstack-origin
|
||||
bluestore: False
|
||||
use-direct-io: False
|
||||
osd-devices: '/dev/test-non-existent'
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-rbd-mirror:
|
||||
series: *series
|
||||
charm: ../../../ceph-rbd-mirror.charm
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
|
||||
ceph-mon-b:
|
||||
charm: ch:ceph-mon
|
||||
num_units: 3
|
||||
options:
|
||||
expected-osd-count: 3
|
||||
source: *openstack-origin
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-osd-b:
|
||||
charm: ch:ceph-osd
|
||||
num_units: 3
|
||||
storage:
|
||||
osd-devices: 'cinder,10G'
|
||||
options:
|
||||
source: *openstack-origin
|
||||
bluestore: False
|
||||
use-direct-io: False
|
||||
osd-devices: '/dev/test-non-existent'
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-rbd-mirror-b:
|
||||
series: *series
|
||||
charm: ../../../ceph-rbd-mirror.charm
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
|
||||
relations:
|
||||
|
||||
- - keystone:shared-db
|
||||
- keystone-mysql-router:shared-db
|
||||
- - keystone-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - glance:shared-db
|
||||
- glance-mysql-router:shared-db
|
||||
- - glance-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - cinder:shared-db
|
||||
- cinder-mysql-router:shared-db
|
||||
- - cinder-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - rabbitmq-server
|
||||
- cinder
|
||||
|
||||
- - 'keystone:identity-service'
|
||||
- cinder
|
||||
- - 'keystone:identity-service'
|
||||
- glance
|
||||
|
||||
- - cinder
|
||||
- cinder-ceph
|
||||
- - cinder-ceph:ceph
|
||||
- ceph-mon:client
|
||||
|
||||
- - nova-compute:ceph-access
|
||||
- cinder-ceph:ceph-access
|
||||
- - nova-compute:amqp
|
||||
- rabbitmq-server:amqp
|
||||
|
||||
- - glance:image-service
|
||||
- nova-compute:image-service
|
||||
- - glance
|
||||
- ceph-mon
|
||||
|
||||
- - ceph-mon:osd
|
||||
- ceph-osd:mon
|
||||
- - ceph-mon
|
||||
- ceph-rbd-mirror:ceph-local
|
||||
- - ceph-mon
|
||||
- ceph-rbd-mirror-b:ceph-remote
|
||||
|
||||
- - ceph-mon-b:osd
|
||||
- ceph-osd-b:mon
|
||||
- - ceph-mon-b
|
||||
- ceph-rbd-mirror-b:ceph-local
|
||||
- - ceph-mon-b
|
||||
- ceph-rbd-mirror:ceph-remote
|
@ -1,184 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:jammy-antelope
|
||||
series: &series jammy
|
||||
|
||||
local_overlay_enabled: False
|
||||
|
||||
series: *series
|
||||
|
||||
machines:
|
||||
'0':
|
||||
constraints: "mem=3072M"
|
||||
'1':
|
||||
constraints: "mem=3072M"
|
||||
'2':
|
||||
constraints: "mem=3072M"
|
||||
|
||||
applications:
|
||||
|
||||
keystone-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
glance-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
cinder-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
|
||||
mysql-innodb-cluster:
|
||||
charm: ch:mysql-innodb-cluster
|
||||
num_units: 3
|
||||
to:
|
||||
- '0'
|
||||
- '1'
|
||||
- '2'
|
||||
channel: 8.0.19/edge
|
||||
|
||||
keystone:
|
||||
charm: ch:keystone
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: 2023.1/edge
|
||||
|
||||
rabbitmq-server:
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
channel: 3.9/edge
|
||||
|
||||
cinder:
|
||||
charm: ch:cinder
|
||||
num_units: 1
|
||||
options:
|
||||
block-device: None
|
||||
glance-api-version: 2
|
||||
openstack-origin: *openstack-origin
|
||||
channel: 2023.1/edge
|
||||
|
||||
cinder-ceph:
|
||||
charm: ch:cinder-ceph
|
||||
num_units: 0
|
||||
channel: 2023.1/edge
|
||||
|
||||
glance:
|
||||
charm: ch:glance
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: 2023.1/edge
|
||||
|
||||
nova-compute:
|
||||
charm: ch:nova-compute
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: 2023.1/edge
|
||||
|
||||
ceph-mon:
|
||||
charm: ch:ceph-mon
|
||||
num_units: 3
|
||||
options:
|
||||
expected-osd-count: 3
|
||||
source: *openstack-origin
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-osd:
|
||||
charm: ch:ceph-osd
|
||||
num_units: 3
|
||||
storage:
|
||||
osd-devices: 'cinder,10G'
|
||||
options:
|
||||
source: *openstack-origin
|
||||
bluestore: False
|
||||
use-direct-io: False
|
||||
osd-devices: '/dev/test-non-existent'
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-rbd-mirror:
|
||||
series: *series
|
||||
charm: ../../../ceph-rbd-mirror.charm
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
|
||||
ceph-mon-b:
|
||||
charm: ch:ceph-mon
|
||||
num_units: 3
|
||||
options:
|
||||
expected-osd-count: 3
|
||||
source: *openstack-origin
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-osd-b:
|
||||
charm: ch:ceph-osd
|
||||
num_units: 3
|
||||
storage:
|
||||
osd-devices: 'cinder,10G'
|
||||
options:
|
||||
source: *openstack-origin
|
||||
bluestore: False
|
||||
use-direct-io: False
|
||||
osd-devices: '/dev/test-non-existent'
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-rbd-mirror-b:
|
||||
series: *series
|
||||
charm: ../../../ceph-rbd-mirror.charm
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
|
||||
relations:
|
||||
|
||||
- - keystone:shared-db
|
||||
- keystone-mysql-router:shared-db
|
||||
- - keystone-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - glance:shared-db
|
||||
- glance-mysql-router:shared-db
|
||||
- - glance-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - cinder:shared-db
|
||||
- cinder-mysql-router:shared-db
|
||||
- - cinder-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - rabbitmq-server
|
||||
- cinder
|
||||
|
||||
- - 'keystone:identity-service'
|
||||
- cinder
|
||||
- - 'keystone:identity-service'
|
||||
- glance
|
||||
|
||||
- - cinder
|
||||
- cinder-ceph
|
||||
- - cinder-ceph:ceph
|
||||
- ceph-mon:client
|
||||
|
||||
- - nova-compute:ceph-access
|
||||
- cinder-ceph:ceph-access
|
||||
- - nova-compute:amqp
|
||||
- rabbitmq-server:amqp
|
||||
|
||||
- - glance:image-service
|
||||
- nova-compute:image-service
|
||||
- - glance
|
||||
- ceph-mon
|
||||
|
||||
- - ceph-mon:osd
|
||||
- ceph-osd:mon
|
||||
- - ceph-mon
|
||||
- ceph-rbd-mirror:ceph-local
|
||||
- - ceph-mon
|
||||
- ceph-rbd-mirror-b:ceph-remote
|
||||
|
||||
- - ceph-mon-b:osd
|
||||
- ceph-osd-b:mon
|
||||
- - ceph-mon-b
|
||||
- ceph-rbd-mirror-b:ceph-local
|
||||
- - ceph-mon-b
|
||||
- ceph-rbd-mirror:ceph-remote
|
@ -1,180 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:jammy-bobcat
|
||||
series: &series jammy
|
||||
|
||||
local_overlay_enabled: False
|
||||
|
||||
series: *series
|
||||
|
||||
machines:
|
||||
'0':
|
||||
constraints: "mem=3072M"
|
||||
'1':
|
||||
constraints: "mem=3072M"
|
||||
'2':
|
||||
constraints: "mem=3072M"
|
||||
|
||||
applications:
|
||||
|
||||
keystone-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: 8.0/edge
|
||||
glance-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: 8.0/edge
|
||||
cinder-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: 8.0/edge
|
||||
|
||||
mysql-innodb-cluster:
|
||||
charm: ch:mysql-innodb-cluster
|
||||
num_units: 3
|
||||
to:
|
||||
- '0'
|
||||
- '1'
|
||||
- '2'
|
||||
channel: 8.0/edge
|
||||
|
||||
keystone:
|
||||
charm: ch:keystone
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: 2023.2/edge
|
||||
|
||||
rabbitmq-server:
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
channel: 3.9/edge
|
||||
|
||||
cinder:
|
||||
charm: ch:cinder
|
||||
num_units: 1
|
||||
options:
|
||||
block-device: None
|
||||
glance-api-version: 2
|
||||
openstack-origin: *openstack-origin
|
||||
channel: 2023.2/edge
|
||||
|
||||
cinder-ceph:
|
||||
charm: ch:cinder-ceph
|
||||
num_units: 0
|
||||
channel: 2023.2/edge
|
||||
|
||||
glance:
|
||||
charm: ch:glance
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: 2023.2/edge
|
||||
|
||||
nova-compute:
|
||||
charm: ch:nova-compute
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: 2023.2/edge
|
||||
|
||||
ceph-mon:
|
||||
charm: ch:ceph-mon
|
||||
num_units: 3
|
||||
options:
|
||||
expected-osd-count: 3
|
||||
source: *openstack-origin
|
||||
channel: reef/edge
|
||||
|
||||
ceph-osd:
|
||||
charm: ch:ceph-osd
|
||||
num_units: 3
|
||||
storage:
|
||||
osd-devices: 'cinder,10G'
|
||||
options:
|
||||
source: *openstack-origin
|
||||
osd-devices: '/dev/test-non-existent'
|
||||
channel: reef/edge
|
||||
|
||||
ceph-rbd-mirror:
|
||||
series: *series
|
||||
charm: ../../../ceph-rbd-mirror.charm
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
|
||||
ceph-mon-b:
|
||||
charm: ch:ceph-mon
|
||||
num_units: 3
|
||||
options:
|
||||
expected-osd-count: 3
|
||||
source: *openstack-origin
|
||||
channel: reef/edge
|
||||
|
||||
ceph-osd-b:
|
||||
charm: ch:ceph-osd
|
||||
num_units: 3
|
||||
storage:
|
||||
osd-devices: 'cinder,10G'
|
||||
options:
|
||||
source: *openstack-origin
|
||||
osd-devices: '/dev/test-non-existent'
|
||||
channel: reef/edge
|
||||
|
||||
ceph-rbd-mirror-b:
|
||||
series: *series
|
||||
charm: ../../../ceph-rbd-mirror.charm
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
|
||||
relations:
|
||||
|
||||
- - keystone:shared-db
|
||||
- keystone-mysql-router:shared-db
|
||||
- - keystone-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - glance:shared-db
|
||||
- glance-mysql-router:shared-db
|
||||
- - glance-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - cinder:shared-db
|
||||
- cinder-mysql-router:shared-db
|
||||
- - cinder-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - rabbitmq-server
|
||||
- cinder
|
||||
|
||||
- - 'keystone:identity-service'
|
||||
- cinder
|
||||
- - 'keystone:identity-service'
|
||||
- glance
|
||||
|
||||
- - cinder
|
||||
- cinder-ceph
|
||||
- - cinder-ceph:ceph
|
||||
- ceph-mon:client
|
||||
|
||||
- - nova-compute:ceph-access
|
||||
- cinder-ceph:ceph-access
|
||||
- - nova-compute:amqp
|
||||
- rabbitmq-server:amqp
|
||||
|
||||
- - glance:image-service
|
||||
- nova-compute:image-service
|
||||
- - glance
|
||||
- ceph-mon
|
||||
|
||||
- - ceph-mon:osd
|
||||
- ceph-osd:mon
|
||||
- - ceph-mon
|
||||
- ceph-rbd-mirror:ceph-local
|
||||
- - ceph-mon
|
||||
- ceph-rbd-mirror-b:ceph-remote
|
||||
|
||||
- - ceph-mon-b:osd
|
||||
- ceph-osd-b:mon
|
||||
- - ceph-mon-b
|
||||
- ceph-rbd-mirror-b:ceph-local
|
||||
- - ceph-mon-b
|
||||
- ceph-rbd-mirror:ceph-remote
|
@ -1,186 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin distro
|
||||
|
||||
local_overlay_enabled: False
|
||||
|
||||
series: &series jammy
|
||||
|
||||
machines:
|
||||
'0':
|
||||
constraints: "mem=3072M"
|
||||
'1':
|
||||
constraints: "mem=3072M"
|
||||
'2':
|
||||
constraints: "mem=3072M"
|
||||
|
||||
applications:
|
||||
|
||||
keystone-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
glance-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
cinder-mysql-router:
|
||||
charm: ch:mysql-router
|
||||
channel: latest/edge
|
||||
|
||||
mysql-innodb-cluster:
|
||||
charm: ch:mysql-innodb-cluster
|
||||
num_units: 3
|
||||
options:
|
||||
source: *openstack-origin
|
||||
to:
|
||||
- '0'
|
||||
- '1'
|
||||
- '2'
|
||||
channel: latest/edge
|
||||
|
||||
keystone:
|
||||
charm: ch:keystone
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: yoga/edge
|
||||
|
||||
rabbitmq-server:
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
channel: latest/edge
|
||||
|
||||
cinder:
|
||||
charm: ch:cinder
|
||||
num_units: 1
|
||||
options:
|
||||
block-device: None
|
||||
glance-api-version: 2
|
||||
channel: yoga/edge
|
||||
|
||||
cinder-ceph:
|
||||
charm: ch:cinder-ceph
|
||||
num_units: 0
|
||||
channel: yoga/edge
|
||||
|
||||
glance:
|
||||
charm: ch:glance
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: yoga/edge
|
||||
|
||||
nova-compute:
|
||||
charm: ch:nova-compute
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: yoga/edge
|
||||
|
||||
ceph-mon:
|
||||
charm: ch:ceph-mon
|
||||
num_units: 3
|
||||
options:
|
||||
expected-osd-count: 3
|
||||
source: *openstack-origin
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-osd:
|
||||
charm: ch:ceph-osd
|
||||
num_units: 3
|
||||
storage:
|
||||
osd-devices: 'cinder,10G'
|
||||
options:
|
||||
source: *openstack-origin
|
||||
bluestore: False
|
||||
use-direct-io: False
|
||||
osd-devices: '/dev/test-non-existent'
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-rbd-mirror:
|
||||
series: *series
|
||||
charm: ../../../ceph-rbd-mirror.charm
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
|
||||
ceph-mon-b:
|
||||
charm: ch:ceph-mon
|
||||
num_units: 3
|
||||
options:
|
||||
expected-osd-count: 3
|
||||
source: *openstack-origin
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-osd-b:
|
||||
charm: ch:ceph-osd
|
||||
num_units: 3
|
||||
storage:
|
||||
osd-devices: 'cinder,10G'
|
||||
options:
|
||||
source: *openstack-origin
|
||||
bluestore: False
|
||||
use-direct-io: False
|
||||
osd-devices: '/dev/test-non-existent'
|
||||
channel: quincy/edge
|
||||
|
||||
ceph-rbd-mirror-b:
|
||||
series: *series
|
||||
charm: ../../../ceph-rbd-mirror.charm
|
||||
num_units: 1
|
||||
options:
|
||||
source: *openstack-origin
|
||||
|
||||
relations:
|
||||
|
||||
- - keystone:shared-db
|
||||
- keystone-mysql-router:shared-db
|
||||
- - keystone-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - glance:shared-db
|
||||
- glance-mysql-router:shared-db
|
||||
- - glance-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - cinder:shared-db
|
||||
- cinder-mysql-router:shared-db
|
||||
- - cinder-mysql-router:db-router
|
||||
- mysql-innodb-cluster:db-router
|
||||
|
||||
- - rabbitmq-server
|
||||
- cinder
|
||||
|
||||
- - 'keystone:identity-service'
|
||||
- cinder
|
||||
- - 'keystone:identity-service'
|
||||
- glance
|
||||
|
||||
- - cinder
|
||||
- cinder-ceph
|
||||
- - cinder-ceph:ceph
|
||||
- ceph-mon:client
|
||||
|
||||
- - nova-compute:ceph-access
|
||||
- cinder-ceph:ceph-access
|
||||
- - nova-compute:amqp
|
||||
- rabbitmq-server:amqp
|
||||
|
||||
- - glance:image-service
|
||||
- nova-compute:image-service
|
||||
- - glance
|
||||
- ceph-mon
|
||||
|
||||
- - ceph-mon:osd
|
||||
- ceph-osd:mon
|
||||
- - ceph-mon
|
||||
- ceph-rbd-mirror:ceph-local
|
||||
- - ceph-mon
|
||||
- ceph-rbd-mirror-b:ceph-remote
|
||||
|
||||
- - ceph-mon-b:osd
|
||||
- ceph-osd-b:mon
|
||||
- - ceph-mon-b
|
||||
- ceph-rbd-mirror-b:ceph-local
|
||||
- - ceph-mon-b
|
||||
- ceph-rbd-mirror:ceph-remote
|
@ -1,6 +1,6 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:jammy-caracal
|
||||
series: &series jammy
|
||||
openstack-origin: &openstack-origin distro
|
||||
series: &series noble
|
||||
|
||||
local_overlay_enabled: False
|
||||
|
||||
@ -73,7 +73,8 @@ applications:
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
channel: latest/edge
|
||||
channel: 2023.2/stable
|
||||
series: jammy
|
||||
|
||||
ceph-mon:
|
||||
charm: ch:ceph-mon
|
@ -1,22 +1,12 @@
|
||||
charm_name: ceph-rbd-mirror
|
||||
smoke_bundles:
|
||||
- jammy-antelope
|
||||
gate_bundles:
|
||||
- jammy-bobcat
|
||||
- noble-caracal
|
||||
comment: |
|
||||
The e2e bundles are useful for development but adds no additional value to
|
||||
the functional tests.
|
||||
dev_bundles:
|
||||
- focal-yoga
|
||||
- focal-yoga-image-mirroring
|
||||
- jammy-yoga
|
||||
- jammy-yoga-image-mirroring
|
||||
configure:
|
||||
- zaza.openstack.charm_tests.glance.setup.add_cirros_image
|
||||
tests:
|
||||
- zaza.openstack.charm_tests.ceph.rbd_mirror.tests.CephRBDMirrorTest
|
||||
- zaza.openstack.charm_tests.ceph.rbd_mirror.tests.CephRBDMirrorControlledFailoverTest
|
||||
- zaza.openstack.charm_tests.ceph.rbd_mirror.tests.CephRBDMirrorDisasterFailoverTest
|
||||
tests_options:
|
||||
force_deploy:
|
||||
- jammy-caracal
|
@ -1,4 +1,5 @@
|
||||
git+https://github.com/juju/charm-helpers.git#egg=charmhelpers
|
||||
psutil
|
||||
poetry-core
|
||||
git+https://github.com/openstack/charms.openstack.git#egg=charms.openstack
|
||||
# https://github.com/canonical/charms.reactive/pull/260
|
||||
git+https://github.com/canonical/charms.reactive.git#egg=charms.reactive
|
||||
|
30
tox.ini
30
tox.ini
@ -12,16 +12,12 @@ sitepackages = False
|
||||
skip_missing_interpreters = False
|
||||
|
||||
[testenv]
|
||||
# We use tox mainly for virtual environment management for test requirements
|
||||
# and do not install the charm code as a Python package into that environment.
|
||||
# Ref: https://tox.wiki/en/latest/config.html#skip_install
|
||||
skip_install = True
|
||||
setenv = VIRTUAL_ENV={envdir}
|
||||
PYTHONHASHSEED=0
|
||||
TERM=linux
|
||||
JUJU_REPOSITORY={toxinidir}/build
|
||||
CHARM_LAYERS_DIR={toxinidir}/layers
|
||||
CHARM_INTERFACES_DIR={toxinidir}/interfaces
|
||||
JUJU_REPOSITORY={toxinidir}/build
|
||||
passenv =
|
||||
no_proxy
|
||||
http_proxy
|
||||
@ -39,10 +35,6 @@ deps =
|
||||
|
||||
[testenv:build]
|
||||
basepython = python3
|
||||
# charmcraft clean is done to ensure that
|
||||
# `tox -e build` always performs a clean, repeatable build.
|
||||
# For faster rebuilds during development,
|
||||
# directly run `charmcraft -v pack && ./rename.sh`.
|
||||
commands =
|
||||
charmcraft clean
|
||||
charmcraft -v pack
|
||||
@ -52,7 +44,7 @@ commands =
|
||||
[testenv:build-reactive]
|
||||
basepython = python3
|
||||
commands =
|
||||
charm-build --log-level DEBUG --use-lock-file-branches -o {toxinidir}/build/builds src {posargs}
|
||||
charm-build --log-level DEBUG --use-lock-file-branches --binary-wheels-from-source -o {toxinidir}/build/builds src {posargs}
|
||||
|
||||
[testenv:add-build-lock-file]
|
||||
basepython = python3
|
||||
@ -61,22 +53,16 @@ commands =
|
||||
|
||||
[testenv:py3]
|
||||
basepython = python3
|
||||
deps = -r{toxinidir}/test-requirements.txt
|
||||
commands = stestr run --slowest {posargs}
|
||||
|
||||
[testenv:py38]
|
||||
basepython = python3.8
|
||||
deps = -r{toxinidir}/test-requirements.txt
|
||||
commands = stestr run --slowest {posargs}
|
||||
|
||||
[testenv:py39]
|
||||
basepython = python3.9
|
||||
deps = -r{toxinidir}/test-requirements.txt
|
||||
deps =
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt}
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
commands = stestr run --slowest {posargs}
|
||||
|
||||
[testenv:py310]
|
||||
basepython = python3.10
|
||||
deps = -r{toxinidir}/test-requirements.txt
|
||||
deps =
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt}
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
commands = stestr run --slowest {posargs}
|
||||
|
||||
[testenv:pep8]
|
||||
|
Loading…
x
Reference in New Issue
Block a user