Add charmcraft 3 support
- Update the charmcraft.yaml file to use base and platforms, only allowing noble support. - Update config to default to caracal. - Update osci.yaml to use the charmcraft 3.x/beta - Drop non-noble tests - Update constraints file from -2024.1.txt to -noble.txt - Add charmbuild to .zuul.yaml - Update flake to 7.1.1 - Add Py312 tox target - Remove setup_tools pinning Change-Id: Idd6c6524ea9f0da006af6916ce6ac4569c225a28
This commit is contained in:
parent
3b1518d306
commit
9c040be542
@ -2,3 +2,8 @@
|
||||
templates:
|
||||
- openstack-python3-charm-jobs
|
||||
- openstack-cover-jobs
|
||||
check:
|
||||
jobs:
|
||||
- charmbuild
|
||||
vars:
|
||||
charm_build_name: cinder-purestorage
|
||||
|
@ -20,36 +20,17 @@ parts:
|
||||
build-environment:
|
||||
- CHARM_INTERFACES_DIR: $CRAFT_PROJECT_DIR/interfaces/
|
||||
- CHARM_LAYERS_DIR: $CRAFT_PROJECT_DIR/layers/
|
||||
bases:
|
||||
- build-on:
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [amd64]
|
||||
run-on:
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [amd64]
|
||||
- build-on:
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [s390x]
|
||||
run-on:
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [s390x]
|
||||
- build-on:
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [ppc64el]
|
||||
run-on:
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [ppc64el]
|
||||
- build-on:
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [arm64]
|
||||
run-on:
|
||||
- name: ubuntu
|
||||
channel: "22.04"
|
||||
architectures: [arm64]
|
||||
base: ubuntu@24.04
|
||||
platforms:
|
||||
amd64:
|
||||
build-on: amd64
|
||||
build-for: amd64
|
||||
arm64:
|
||||
build-on: arm64
|
||||
build-for: arm64
|
||||
ppc64el:
|
||||
build-on: ppc64el
|
||||
build-for: ppc64el
|
||||
s390x:
|
||||
build-on: s390x
|
||||
build-for: s390x
|
@ -6,4 +6,4 @@
|
||||
needs_charm_build: true
|
||||
charm_build_name: cinder-purestorage
|
||||
build_type: charmcraft
|
||||
charmcraft_channel: 2.x/stable
|
||||
charmcraft_channel: 3.x/stable
|
||||
|
@ -3,10 +3,6 @@
|
||||
# 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
|
||||
|
||||
# Build requirements
|
||||
git+https://github.com/juju/charm-tools.git
|
||||
|
@ -10,8 +10,6 @@ tags:
|
||||
- storage
|
||||
- file-servers
|
||||
- misc
|
||||
series:
|
||||
- jammy
|
||||
subordinate: true
|
||||
provides:
|
||||
storage-backend:
|
||||
|
@ -1,87 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:jammy-antelope
|
||||
|
||||
local_overlay_enabled: False
|
||||
|
||||
series: jammy
|
||||
|
||||
comment:
|
||||
- 'machines section to decide order of deployment. database sooner = faster'
|
||||
machines:
|
||||
'0':
|
||||
constraints: mem=3072M
|
||||
'1':
|
||||
constraints: mem=3072M
|
||||
'2':
|
||||
constraints: mem=3072M
|
||||
'3':
|
||||
'4':
|
||||
'5':
|
||||
|
||||
relations:
|
||||
- - 'cinder:identity-service'
|
||||
- 'keystone:identity-service'
|
||||
|
||||
- - 'cinder:amqp'
|
||||
- 'rabbitmq-server:amqp'
|
||||
|
||||
- - 'cinder:storage-backend'
|
||||
- 'cinder-purestorage:storage-backend'
|
||||
|
||||
- - 'keystone:shared-db'
|
||||
- 'keystone-mysql-router:shared-db'
|
||||
- - 'keystone-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'
|
||||
|
||||
applications:
|
||||
keystone-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
|
||||
to:
|
||||
- '3'
|
||||
channel: 2024.1/edge
|
||||
cinder:
|
||||
charm: ch:cinder
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '4'
|
||||
channel: 2024.1/edge
|
||||
cinder-purestorage:
|
||||
charm: ../../../cinder-purestorage_ubuntu-22.04-amd64.charm
|
||||
options:
|
||||
# Add config options here
|
||||
driver-source: ppa:openstack-charmers/purestorage-stable
|
||||
protocol: iscsi
|
||||
volume-backend-name: cinder-pure
|
||||
rabbitmq-server:
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
to:
|
||||
- '5'
|
||||
channel: latest/edge
|
@ -1,87 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:jammy-bobcat
|
||||
|
||||
local_overlay_enabled: False
|
||||
|
||||
series: jammy
|
||||
|
||||
comment:
|
||||
- 'machines section to decide order of deployment. database sooner = faster'
|
||||
machines:
|
||||
'0':
|
||||
constraints: mem=3072M
|
||||
'1':
|
||||
constraints: mem=3072M
|
||||
'2':
|
||||
constraints: mem=3072M
|
||||
'3':
|
||||
'4':
|
||||
'5':
|
||||
|
||||
relations:
|
||||
- - 'cinder:identity-service'
|
||||
- 'keystone:identity-service'
|
||||
|
||||
- - 'cinder:amqp'
|
||||
- 'rabbitmq-server:amqp'
|
||||
|
||||
- - 'cinder:storage-backend'
|
||||
- 'cinder-purestorage:storage-backend'
|
||||
|
||||
- - 'keystone:shared-db'
|
||||
- 'keystone-mysql-router:shared-db'
|
||||
- - 'keystone-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'
|
||||
|
||||
applications:
|
||||
keystone-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
|
||||
to:
|
||||
- '3'
|
||||
channel: 2024.1/edge
|
||||
cinder:
|
||||
charm: ch:cinder
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '4'
|
||||
channel: 2024.1/edge
|
||||
cinder-purestorage:
|
||||
charm: ../../../cinder-purestorage_ubuntu-22.04-amd64.charm
|
||||
options:
|
||||
# Add config options here
|
||||
driver-source: ppa:openstack-charmers/purestorage-stable
|
||||
protocol: iscsi
|
||||
volume-backend-name: cinder-pure
|
||||
rabbitmq-server:
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
to:
|
||||
- '5'
|
||||
channel: latest/edge
|
@ -1,87 +0,0 @@
|
||||
variables:
|
||||
openstack-origin: &openstack-origin cloud:jammy-caracal
|
||||
|
||||
local_overlay_enabled: False
|
||||
|
||||
series: jammy
|
||||
|
||||
comment:
|
||||
- 'machines section to decide order of deployment. database sooner = faster'
|
||||
machines:
|
||||
'0':
|
||||
constraints: mem=3072M
|
||||
'1':
|
||||
constraints: mem=3072M
|
||||
'2':
|
||||
constraints: mem=3072M
|
||||
'3':
|
||||
'4':
|
||||
'5':
|
||||
|
||||
relations:
|
||||
- - 'cinder:identity-service'
|
||||
- 'keystone:identity-service'
|
||||
|
||||
- - 'cinder:amqp'
|
||||
- 'rabbitmq-server:amqp'
|
||||
|
||||
- - 'cinder:storage-backend'
|
||||
- 'cinder-purestorage:storage-backend'
|
||||
|
||||
- - 'keystone:shared-db'
|
||||
- 'keystone-mysql-router:shared-db'
|
||||
- - 'keystone-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'
|
||||
|
||||
applications:
|
||||
keystone-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
|
||||
to:
|
||||
- '3'
|
||||
channel: 2024.1/edge
|
||||
cinder:
|
||||
charm: ch:cinder
|
||||
num_units: 1
|
||||
options:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '4'
|
||||
channel: 2024.1/edge
|
||||
cinder-purestorage:
|
||||
charm: ../../../cinder-purestorage_ubuntu-22.04-amd64.charm
|
||||
options:
|
||||
# Add config options here
|
||||
driver-source: ppa:openstack-charmers/purestorage-stable
|
||||
protocol: iscsi
|
||||
volume-backend-name: cinder-pure
|
||||
rabbitmq-server:
|
||||
charm: ch:rabbitmq-server
|
||||
num_units: 1
|
||||
to:
|
||||
- '5'
|
||||
channel: latest/edge
|
@ -63,7 +63,7 @@ applications:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '3'
|
||||
channel: 2024.1/edge
|
||||
channel: latest/edge
|
||||
cinder:
|
||||
charm: ch:cinder
|
||||
num_units: 1
|
||||
@ -71,9 +71,9 @@ applications:
|
||||
openstack-origin: *openstack-origin
|
||||
to:
|
||||
- '4'
|
||||
channel: 2024.1/edge
|
||||
channel: latest/edge
|
||||
cinder-purestorage:
|
||||
charm: ../../../cinder-purestorage_ubuntu-22.04-amd64.charm
|
||||
charm: ../../../cinder-purestorage.charm
|
||||
options:
|
||||
# Add config options here
|
||||
driver-source: ppa:openstack-charmers/purestorage-stable
|
||||
|
@ -6,11 +6,9 @@ tests:
|
||||
configure:
|
||||
- zaza.openstack.charm_tests.keystone.setup.add_demo_user
|
||||
gate_bundles:
|
||||
- jammy-antelope
|
||||
- jammy-bobcat
|
||||
- jammy-caracal
|
||||
- noble-caracal
|
||||
smoke_bundles:
|
||||
- jammy-caracal
|
||||
- noble-caracal
|
||||
dev_bundles:
|
||||
- noble-caracal
|
||||
tests_options:
|
||||
|
@ -26,7 +26,7 @@ passenv =
|
||||
OS_*
|
||||
TEST_*
|
||||
deps =
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt}
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-noble.txt}
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
|
||||
[testenv:pep8]
|
||||
|
@ -4,7 +4,6 @@
|
||||
# https://github.com/openstack-charmers/release-tools
|
||||
#
|
||||
pyparsing<3.0.0 # aodhclient is pinned in zaza and needs pyparsing < 3.0.0, but cffi also needs it, so pin here.
|
||||
setuptools<50.0.0 # https://github.com/pypa/setuptools/commit/04e3df22df840c6bb244e9b27bc56750c44b7c85
|
||||
|
||||
stestr>=2.2.0
|
||||
|
||||
|
17
tox.ini
17
tox.ini
@ -22,6 +22,7 @@ setenv = VIRTUAL_ENV={envdir}
|
||||
CHARM_LAYERS_DIR={toxinidir}/layers
|
||||
CHARM_INTERFACES_DIR={toxinidir}/interfaces
|
||||
JUJU_REPOSITORY={toxinidir}/build
|
||||
TEST_JUJU3=1 # Note(jadonn): Force Juju 3
|
||||
passenv =
|
||||
no_proxy
|
||||
http_proxy
|
||||
@ -33,6 +34,7 @@ allowlist_externals =
|
||||
charmcraft
|
||||
bash
|
||||
tox
|
||||
{toxinidir}/rename.sh
|
||||
deps =
|
||||
-r{toxinidir}/requirements.txt
|
||||
|
||||
@ -61,20 +63,27 @@ commands =
|
||||
[testenv:py3]
|
||||
basepython = python3
|
||||
deps =
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt}
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-noble.txt}
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
commands = stestr run --slowest {posargs}
|
||||
|
||||
[testenv:py310]
|
||||
basepython = python3.10
|
||||
deps =
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt}
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-noble.txt}
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
commands = stestr run --slowest {posargs}
|
||||
|
||||
[testenv:py312]
|
||||
basepython = python3.12
|
||||
deps =
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-noble.txt}
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
commands = stestr run --slowest {posargs}
|
||||
|
||||
[testenv:pep8]
|
||||
basepython = python3
|
||||
deps = flake8==3.9.2
|
||||
deps = flake8==7.1.1
|
||||
git+https://github.com/juju/charm-tools.git
|
||||
commands = flake8 {posargs} src unit_tests
|
||||
|
||||
@ -83,7 +92,7 @@ commands = flake8 {posargs} src unit_tests
|
||||
# https://github.com/openstack/nova/blob/master/tox.ini
|
||||
basepython = python3
|
||||
deps =
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt}
|
||||
-c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-noble.txt}
|
||||
-r{toxinidir}/requirements.txt
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
setenv =
|
||||
|
Loading…
Reference in New Issue
Block a user