Updates for testing period for 23.10 release

* charm-helpers sync for classic charms
* build.lock file for reactive charms
* ensure tox.ini is from release-tools
* Locked requirements using pip-compile:
  * existing (test-)requirements.txt ->
    (test-)requirements.in
  * pip-compile to *-py3[8|10].txt using python3.8
    and python3.10.
  * Updated tox.ini to use the appropriate merged
    requirements-*.txt files.
* Removal of lunar from metadata, charmcraft.yaml
  osci.yaml, tests.yaml and associated bundles.
* Locked libs and tests to stable/bobcat branches for:
  * charm-helpers
  * charms.openstack
  * zaza
  * zaza-openstack-tests

Change-Id: I38be735653289b34e3ea34bc82ac2f8b80149362
This commit is contained in:
Alex Kavanagh 2023-10-17 18:01:06 +01:00 committed by Felipe Reyes
parent 846cd78b56
commit dc0c5d34ff
22 changed files with 1722 additions and 278 deletions

View File

@ -2,3 +2,5 @@
host=review.opendev.org
port=29418
project=openstack/charm-gnocchi.git
defaultbranch=stable/2023.2

View File

@ -54,38 +54,6 @@ bases:
- name: ubuntu
channel: "22.04"
architectures: [arm64]
- build-on:
- name: ubuntu
channel: "23.04"
architectures: [amd64]
run-on:
- name: ubuntu
channel: "23.04"
architectures: [amd64]
- build-on:
- name: ubuntu
channel: "23.04"
architectures: [s390x]
run-on:
- name: ubuntu
channel: "23.04"
architectures: [s390x]
- build-on:
- name: ubuntu
channel: "23.04"
architectures: [ppc64el]
run-on:
- name: ubuntu
channel: "23.04"
architectures: [ppc64el]
- build-on:
- name: ubuntu
channel: "23.04"
architectures: [arm64]
run-on:
- name: ubuntu
channel: "23.04"
architectures: [arm64]
- build-on:
- name: ubuntu
channel: "23.10"

View File

@ -0,0 +1,200 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# pip-compile --output-file=merged-requirements-py310.txt requirements.in test-requirements.in
#
attrs==23.1.0
# via jsonschema
blessings==1.7
# via charm-tools
certifi==2023.7.22
# via requests
cffi==1.16.0
# via cryptography
charm-tools @ git+https://github.com/juju/charm-tools.git
# via -r requirements.in
charmhelpers==1.2.1
# via charms-reactive
charms-openstack @ git+https://github.com/openstack/charms.openstack.git@stable/bobcat
# via -r test-requirements.in
charms-reactive==1.5.2
# via -r test-requirements.in
charset-normalizer==3.3.1
# via requests
cheetah3==3.2.6.post1
# via charm-tools
cliff==2.18.0
# via
# -r test-requirements.in
# stestr
cmd2==0.8.9
# via cliff
colander==1.8.3
# via charm-tools
coverage==7.3.2
# via -r test-requirements.in
cryptography==3.3.2
# via
# -r requirements.in
# -r test-requirements.in
# secretstorage
dict2colander==0.2
# via charm-tools
distlib==0.3.7
# via virtualenv
extras==1.0.0
# via stestr
filelock==3.12.4
# via virtualenv
fixtures==3.0.0
# via
# stestr
# testtools
hvac==2.0.0
# via -r test-requirements.in
idna==3.4
# via requests
importlib-metadata==6.8.0
# via keyring
iso8601==2.1.0
# via
# colander
# python-subunit
jaraco-classes==3.3.0
# via keyring
jeepney==0.8.0
# via
# keyring
# secretstorage
jinja2==3.1.2
# via charmhelpers
jsonschema==4.17.3
# via charm-tools
jujubundlelib==0.5.7
# via charm-tools
keyring==23.13.1
# via charm-tools
lxml==4.9.3
# via -r test-requirements.in
markupsafe==2.1.3
# via jinja2
mock==5.1.0
# via -r test-requirements.in
more-itertools==10.1.0
# via jaraco-classes
netaddr==0.9.0
# via charmhelpers
netifaces==0.11.0
# via -r test-requirements.in
nose==1.3.7
# via -r test-requirements.in
otherstuf==1.1.0
# via charm-tools
parse==1.19.1
# via stuf
path==16.7.1
# via path-py
path-py==12.5.0
# via charm-tools
pathspec==0.10.3
# via charm-tools
pbr==5.6.0
# via
# -r test-requirements.in
# charmhelpers
# cliff
# fixtures
# stestr
# stevedore
# testtools
platformdirs==3.11.0
# via virtualenv
prettytable==0.7.2
# via cliff
psutil==5.9.6
# via -r test-requirements.in
psycopg2-binary==2.9.9
# via -r test-requirements.in
pyaml==23.9.7
# via charms-reactive
pycparser==2.21
# via cffi
pyparsing==2.4.7
# via
# -r test-requirements.in
# cliff
# cmd2
pyperclip==1.8.2
# via cmd2
pyrsistent==0.19.3
# via jsonschema
python-subunit==1.4.3
# via stestr
pyyaml==6.0.1
# via
# charm-tools
# charmhelpers
# cliff
# jujubundlelib
# pyaml
# stestr
requests==2.31.0
# via
# -r test-requirements.in
# charm-tools
# hvac
requirements-parser==0.5.0
# via charm-tools
ruamel-yaml==0.17.40
# via charm-tools
ruamel-yaml-clib==0.2.8
# via ruamel-yaml
secretstorage==3.3.3
# via
# charm-tools
# keyring
simplejson==3.19.2
# via -r requirements.in
six==1.16.0
# via
# blessings
# cliff
# cmd2
# cryptography
# fixtures
stestr==4.1.0
# via -r test-requirements.in
stevedore==5.1.0
# via cliff
stuf==0.9.16
# via otherstuf
tenacity==8.2.3
# via -r test-requirements.in
testtools==2.6.0
# via
# fixtures
# python-subunit
# stestr
tomlkit==0.12.1
# via stestr
translationstring==1.4
# via colander
types-setuptools==68.2.0.0
# via requirements-parser
urllib3==2.0.7
# via requests
vergit==1.0.2
# via charm-tools
virtualenv==20.24.6
# via charm-tools
voluptuous==0.13.1
# via stestr
wcwidth==0.2.8
# via cmd2
zipp==3.17.0
# via importlib-metadata
# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools

View File

@ -0,0 +1,208 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# pip-compile --output-file=merged-requirements-py38.txt requirements.in test-requirements.in
#
attrs==23.1.0
# via jsonschema
blessings==1.7
# via charm-tools
certifi==2023.7.22
# via requests
cffi==1.16.0
# via cryptography
charm-tools @ git+https://github.com/juju/charm-tools.git
# via -r requirements.in
charmhelpers==1.2.1
# via charms-reactive
charms-openstack @ git+https://github.com/openstack/charms.openstack.git@stable/bobcat
# via -r test-requirements.in
charms-reactive==1.5.2
# via -r test-requirements.in
charset-normalizer==3.3.1
# via requests
cheetah3==3.2.6.post1
# via charm-tools
cliff==2.18.0
# via
# -r test-requirements.in
# stestr
cmd2==0.8.9
# via cliff
colander==1.8.3
# via charm-tools
coverage==7.3.2
# via -r test-requirements.in
cryptography==3.3.2
# via
# -r requirements.in
# -r test-requirements.in
# secretstorage
dict2colander==0.2
# via charm-tools
distlib==0.3.7
# via virtualenv
extras==1.0.0
# via stestr
filelock==3.12.4
# via virtualenv
fixtures==3.0.0
# via
# stestr
# testtools
hvac==2.0.0
# via -r test-requirements.in
idna==3.4
# via requests
importlib-metadata==6.8.0
# via keyring
importlib-resources==6.1.0
# via
# jsonschema
# keyring
iso8601==2.1.0
# via
# colander
# python-subunit
jaraco-classes==3.3.0
# via keyring
jeepney==0.8.0
# via
# keyring
# secretstorage
jinja2==3.1.2
# via charmhelpers
jsonschema==4.17.3
# via charm-tools
jujubundlelib==0.5.7
# via charm-tools
keyring==23.13.1
# via charm-tools
lxml==4.9.3
# via -r test-requirements.in
markupsafe==2.1.3
# via jinja2
mock==5.1.0
# via -r test-requirements.in
more-itertools==10.1.0
# via jaraco-classes
netaddr==0.9.0
# via charmhelpers
netifaces==0.11.0
# via -r test-requirements.in
nose==1.3.7
# via -r test-requirements.in
otherstuf==1.1.0
# via charm-tools
parse==1.19.1
# via stuf
path==16.7.1
# via path-py
path-py==12.5.0
# via charm-tools
pathspec==0.10.3
# via charm-tools
pbr==5.6.0
# via
# -r test-requirements.in
# charmhelpers
# cliff
# fixtures
# stestr
# stevedore
# testtools
pkgutil-resolve-name==1.3.10
# via jsonschema
platformdirs==3.11.0
# via virtualenv
prettytable==0.7.2
# via cliff
psutil==5.9.6
# via -r test-requirements.in
psycopg2-binary==2.9.9
# via -r test-requirements.in
pyaml==23.9.7
# via charms-reactive
pycparser==2.21
# via cffi
pyparsing==2.4.7
# via
# -r test-requirements.in
# cliff
# cmd2
pyperclip==1.8.2
# via cmd2
pyrsistent==0.19.3
# via jsonschema
python-subunit==1.4.3
# via stestr
pyyaml==6.0.1
# via
# charm-tools
# charmhelpers
# cliff
# jujubundlelib
# pyaml
# stestr
requests==2.31.0
# via
# -r test-requirements.in
# charm-tools
# hvac
requirements-parser==0.5.0
# via charm-tools
ruamel-yaml==0.17.40
# via charm-tools
ruamel-yaml-clib==0.2.8
# via ruamel-yaml
secretstorage==3.3.3
# via
# charm-tools
# keyring
simplejson==3.19.2
# via -r requirements.in
six==1.16.0
# via
# blessings
# cliff
# cmd2
# cryptography
# fixtures
stestr==4.1.0
# via -r test-requirements.in
stevedore==5.1.0
# via cliff
stuf==0.9.16
# via otherstuf
tenacity==8.2.3
# via -r test-requirements.in
testtools==2.6.0
# via
# fixtures
# python-subunit
# stestr
tomlkit==0.12.1
# via stestr
translationstring==1.4
# via colander
types-setuptools==68.2.0.0
# via requirements-parser
urllib3==2.0.7
# via requests
vergit==1.0.2
# via charm-tools
virtualenv==20.24.6
# via charm-tools
voluptuous==0.13.1
# via stestr
wcwidth==0.2.8
# via cmd2
zipp==3.17.0
# via
# importlib-metadata
# importlib-resources
# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools

View File

@ -4,18 +4,17 @@
- charm-functional-jobs
check:
jobs:
- jammy-antelope
- test-s3-jammy-antelope-s3
- test-s3-jammy-bobcat-s3:
voting: false
- test-s3-lunar-antelope-s3:
voting: false
- test-s3-mantic-bobcat-s3:
voting: false
vars:
needs_charm_build: true
charm_build_name: gnocchi
build_type: charmcraft
charmcraft_channel: 2.x/edge
charmcraft_channel: 2.x/stable
- job:
name: test-s3-jammy-antelope-s3
@ -28,20 +27,13 @@
name: test-s3-jammy-bobcat-s3
parent: func-target
dependencies:
- jammy-antelope
- jammy-bobcat
vars:
tox_extra_args: '-- test-s3:jammy-bobcat-s3'
- job:
name: test-s3-lunar-antelope-s3
parent: func-target
dependencies:
- jammy-antelope
vars:
tox_extra_args: '-- test-s3:lunar-antelope-s3'
- job:
name: test-s3-mantic-bobcat-s3
parent: func-target
dependencies:
- jammy-antelope
- jammy-bobcat
vars:
tox_extra_args: '-- test-s3:mantic-bobcat-s3'

320
src/build.lock Normal file
View File

@ -0,0 +1,320 @@
{
"locks": [
{
"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": "23e978fe2872c30511f34ad30a284e34f800e20f",
"commit": "23e978fe2872c30511f34ad30a284e34f800e20f"
},
{
"type": "layer",
"item": "layer:openstack",
"url": "https://github.com/openstack/charm-layer-openstack",
"vcs": null,
"branch": "1c9e662d78b328c6d4587171ccba08572e8dcf25",
"commit": "1c9e662d78b328c6d4587171ccba08572e8dcf25"
},
{
"type": "layer",
"item": "layer:openstack-principle",
"url": "https://github.com/openstack/charm-layer-openstack-principle",
"vcs": null,
"branch": "2541283a7f9c3fa923c0fccd7257e217e11dadcd",
"commit": "2541283a7f9c3fa923c0fccd7257e217e11dadcd"
},
{
"type": "layer",
"item": "layer:openstack-api",
"url": "https://github.com/openstack/charm-layer-openstack-api",
"vcs": null,
"branch": "34311a62e963d0ce903b7ddb9d70b8f071f71651",
"commit": "34311a62e963d0ce903b7ddb9d70b8f071f71651"
},
{
"type": "layer",
"item": "gnocchi",
"url": null,
"vcs": null,
"branch": null,
"commit": ""
},
{
"type": "layer",
"item": "interface:tls-certificates",
"url": "https://github.com/juju-solutions/interface-tls-certificates",
"vcs": null,
"branch": "3056e1fbc5164190c135b20579ab31c89af0b132",
"commit": "3056e1fbc5164190c135b20579ab31c89af0b132"
},
{
"type": "layer",
"item": "interface:mysql-shared",
"url": "https://github.com/openstack/charm-interface-mysql-shared",
"vcs": null,
"branch": "f90f8c6edce21e4da3a872f0f9d6761730ce025d",
"commit": "f90f8c6edce21e4da3a872f0f9d6761730ce025d"
},
{
"type": "layer",
"item": "interface:rabbitmq",
"url": "https://github.com/openstack/charm-interface-rabbitmq",
"vcs": null,
"branch": "383121fc584d2d3bf9d233eba0d3708398a4c468",
"commit": "383121fc584d2d3bf9d233eba0d3708398a4c468"
},
{
"type": "layer",
"item": "interface:keystone",
"url": "https://github.com/openstack/charm-interface-keystone",
"vcs": null,
"branch": "36ea7b385a569ebabca7184ed4ce8420bb8fa61a",
"commit": "36ea7b385a569ebabca7184ed4ce8420bb8fa61a"
},
{
"type": "layer",
"item": "interface:hacluster",
"url": "https://github.com/openstack/charm-interface-hacluster.git",
"vcs": null,
"branch": "5fc5216f51dcf98530d45e137d55fd94b39d150a",
"commit": "5fc5216f51dcf98530d45e137d55fd94b39d150a"
},
{
"type": "layer",
"item": "interface:openstack-ha",
"url": "https://github.com/openstack/charm-interface-openstack-ha",
"vcs": null,
"branch": "a3b00e5b5fd857d130698c5cfe4b918877f0ab80",
"commit": "a3b00e5b5fd857d130698c5cfe4b918877f0ab80"
},
{
"type": "layer",
"item": "interface:ceph-client",
"url": "https://opendev.org/openstack/charm-interface-ceph-client.git",
"vcs": null,
"branch": "d9f3b53ca0cf30e47347a68beab59da5c03ce4c7",
"commit": "d9f3b53ca0cf30e47347a68beab59da5c03ce4c7"
},
{
"type": "layer",
"item": "interface:gnocchi",
"url": "https://github.com/openstack/charm-interface-gnocchi",
"vcs": null,
"branch": "9efd83a5728bee385a93887e8669a513e198a8fe",
"commit": "9efd83a5728bee385a93887e8669a513e198a8fe"
},
{
"type": "layer",
"item": "interface:memcache",
"url": "https://github.com/canonical/interface-memcache.git",
"vcs": null,
"branch": "ab0958e171093f151427eaf62afdf9ae8c20ed0d",
"commit": "ab0958e171093f151427eaf62afdf9ae8c20ed0d"
},
{
"type": "python_module",
"package": "pip",
"vcs": null,
"version": "22.0.4"
},
{
"type": "python_module",
"package": "botocore",
"vcs": null,
"version": "1.31.64"
},
{
"type": "python_module",
"package": "pyaml",
"vcs": null,
"version": "21.10.1"
},
{
"type": "python_module",
"package": "urllib3",
"vcs": null,
"version": "2.0.6"
},
{
"type": "python_module",
"package": "anyio",
"vcs": null,
"version": "3.6.2"
},
{
"type": "python_module",
"package": "tomli",
"vcs": null,
"version": "2.0.1"
},
{
"type": "python_module",
"package": "flit_scm",
"vcs": null,
"version": "1.7.0"
},
{
"type": "python_module",
"package": "netifaces",
"vcs": null,
"version": "0.11.0"
},
{
"type": "python_module",
"package": "dnspython",
"vcs": null,
"version": "2.4.2"
},
{
"type": "python_module",
"package": "pbr",
"vcs": null,
"version": "5.11.1"
},
{
"type": "python_module",
"package": "charms.reactive",
"vcs": null,
"version": "1.5.2"
},
{
"type": "python_module",
"package": "Jinja2",
"vcs": null,
"version": "3.1.2"
},
{
"type": "python_module",
"package": "MarkupSafe",
"vcs": null,
"version": "2.1.3"
},
{
"type": "python_module",
"package": "packaging",
"vcs": null,
"version": "23.2"
},
{
"type": "python_module",
"package": "charmhelpers",
"url": "git+https://github.com/juju/charm-helpers.git",
"branch": "stable/bobcat",
"version": "fb4c77601caed98e029811dcb7970f5f36d37042",
"vcs": "git"
},
{
"type": "python_module",
"package": "netaddr",
"vcs": null,
"version": "0.7.19"
},
{
"type": "python_module",
"package": "idna",
"vcs": null,
"version": "3.4"
},
{
"type": "python_module",
"package": "charms.openstack",
"url": "git+https://github.com/openstack/charms.openstack.git",
"branch": "stable/bobcat",
"version": "70f9e32f057938d8ad5e01da20eabb83d3d34847",
"vcs": "git"
},
{
"type": "python_module",
"package": "sniffio",
"vcs": null,
"version": "1.3.0"
},
{
"type": "python_module",
"package": "boto3",
"vcs": null,
"version": "1.28.64"
},
{
"type": "python_module",
"package": "wheel",
"vcs": null,
"version": "0.41.2"
},
{
"type": "python_module",
"package": "setuptools",
"vcs": null,
"version": "62.1.0"
},
{
"type": "python_module",
"package": "s3transfer",
"vcs": null,
"version": "0.7.0"
},
{
"type": "python_module",
"package": "Cython",
"vcs": null,
"version": "0.29.36"
},
{
"type": "python_module",
"package": "python-dateutil",
"vcs": null,
"version": "2.8.2"
},
{
"type": "python_module",
"package": "psutil",
"vcs": null,
"version": "5.9.6"
},
{
"type": "python_module",
"package": "jmespath",
"vcs": null,
"version": "1.0.1"
},
{
"type": "python_module",
"package": "six",
"vcs": null,
"version": "1.16.0"
},
{
"type": "python_module",
"package": "setuptools_scm",
"vcs": null,
"version": "6.4.2"
},
{
"type": "python_module",
"package": "flit_core",
"vcs": null,
"version": "3.9.0"
},
{
"type": "python_module",
"package": "poetry_core",
"vcs": null,
"version": "1.7.0"
},
{
"type": "python_module",
"package": "PyYAML",
"vcs": null,
"version": "6.0.1"
}
]
}

View File

@ -11,7 +11,6 @@ tags:
- openstack
series:
- jammy
- lunar
- mantic
provides:
metric-service:

View File

@ -0,0 +1,689 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# pip-compile --output-file=src/test-requirements-py38.txt src/test-requirements.in
#
aiohttp==3.8.6
# via
# python-libmaas
# zaza
aiosignal==1.3.1
# via aiohttp
aodhclient==3.3.0
# via zaza-openstack
appdirs==1.4.4
# via python-ironicclient
argcomplete==3.1.2
# via python-libmaas
async-generator==1.10
# via
# zaza
# zaza-openstack
async-timeout==4.0.3
# via aiohttp
attrs==23.1.0
# via
# aiohttp
# cmd2
# jsonschema
# referencing
autopage==0.5.2
# via cliff
babel==2.13.1
# via
# python-cinderclient
# python-heatclient
# python-manilaclient
# python-neutronclient
# python-novaclient
# python-octaviaclient
# python-openstackclient
bcrypt==4.0.1
# via paramiko
boto3==1.28.70
# via zaza-openstack
botocore==1.31.70
# via
# boto3
# s3transfer
cachetools==5.3.2
# via
# google-auth
# tox
certifi==2023.7.22
# via
# kubernetes
# requests
cffi==1.16.0
# via
# cryptography
# pynacl
chardet==5.2.0
# via tox
charset-normalizer==3.3.1
# via
# aiohttp
# requests
cliff==4.3.0
# via
# aodhclient
# gnocchiclient
# osc-lib
# python-barbicanclient
# python-cloudkittyclient
# python-designateclient
# python-heatclient
# python-ironicclient
# python-neutronclient
# python-octaviaclient
# python-openstackclient
# python-watcherclient
cmd2==2.4.3
# via cliff
colorama==0.4.6
# via tox
colorclass==2.2.2
# via python-libmaas
cryptography==3.3.2
# via
# openstacksdk
# paramiko
# pyopenssl
# python-magnumclient
# trustme
# zaza
# zaza-openstack
debtcollector==2.5.0
# via
# gnocchiclient
# oslo-config
# oslo-context
# oslo-log
# oslo-utils
# python-designateclient
# python-keystoneclient
# python-manilaclient
# python-neutronclient
decorator==5.1.1
# via
# dogpile-cache
# jsonpath-rw
# openstacksdk
# python-magnumclient
distlib==0.3.7
# via virtualenv
dnspython==2.4.2
# via
# pymongo
# zaza-openstack
dogpile-cache==1.2.2
# via
# openstacksdk
# python-ironicclient
fasteners==0.19
# via oslo-concurrency
filelock==3.12.4
# via
# tox
# virtualenv
frozenlist==1.4.0
# via
# aiohttp
# aiosignal
futurist==1.10.0
# via
# gnocchiclient
# zaza-openstack
gnocchiclient==7.0.8
# via zaza-openstack
google-auth==2.23.3
# via kubernetes
hvac==0.6.4
# via
# zaza
# zaza-openstack
idna==3.4
# via
# requests
# trustme
# yarl
importlib-metadata==6.8.0
# via cliff
importlib-resources==6.1.0
# via
# jsonschema
# jsonschema-specifications
iso8601==2.1.0
# via
# gnocchiclient
# keystoneauth1
# openstacksdk
# oslo-utils
# python-ceilometerclient
# python-heatclient
# python-neutronclient
# python-novaclient
jinja2==3.1.2
# via
# zaza
# zaza-openstack
jmespath==1.0.1
# via
# boto3
# botocore
# openstacksdk
jsonpatch==1.33
# via
# openstacksdk
# warlock
jsonpath-rw==1.4.0
# via jsonpath-rw-ext
jsonpath-rw-ext==1.2.2
# via python-cloudkittyclient
jsonpointer==2.4
# via jsonpatch
jsonschema==4.19.1
# via
# python-designateclient
# python-ironicclient
# warlock
jsonschema-specifications==2023.7.1
# via jsonschema
juju==2.9.44.1
# via zaza
juju-wait==2.8.4
# via zaza
jujubundlelib==0.5.7
# via theblues
keystoneauth1==5.3.0
# via
# aodhclient
# gnocchiclient
# openstacksdk
# osc-lib
# python-barbicanclient
# python-ceilometerclient
# python-cinderclient
# python-cloudkittyclient
# python-designateclient
# python-glanceclient
# python-heatclient
# python-ironicclient
# python-keystoneclient
# python-magnumclient
# python-neutronclient
# python-novaclient
# python-octaviaclient
# python-openstackclient
# python-watcherclient
kubernetes==28.1.0
# via juju
lxml==4.9.3
# via zaza-openstack
macaroonbakery==1.3.1
# via
# juju
# python-libmaas
# theblues
markupsafe==2.1.3
# via jinja2
msgpack==1.0.7
# via oslo-serialization
multidict==6.0.4
# via
# aiohttp
# yarl
mypy-extensions==1.0.0
# via typing-inspect
netaddr==0.9.0
# via
# oslo-config
# oslo-utils
# osprofiler
# python-neutronclient
netifaces==0.11.0
# via
# openstacksdk
# oslo-utils
# python-octaviaclient
oauthlib==3.2.2
# via
# kubernetes
# python-libmaas
# requests-oauthlib
openstacksdk==2.0.0
# via
# os-client-config
# osc-lib
# python-ironicclient
# python-openstackclient
os-client-config==2.1.0
# via
# python-cloudkittyclient
# python-magnumclient
# python-neutronclient
os-service-types==1.7.0
# via
# keystoneauth1
# openstacksdk
osc-lib==2.8.1
# via
# aodhclient
# python-cloudkittyclient
# python-designateclient
# python-heatclient
# python-ironicclient
# python-magnumclient
# python-neutronclient
# python-octaviaclient
# python-openstackclient
# python-watcherclient
oslo-concurrency==5.2.0
# via osprofiler
oslo-config==6.11.3
# via
# oslo-concurrency
# oslo-log
# python-keystoneclient
# python-manilaclient
# zaza
# zaza-openstack
oslo-context==5.2.0
# via oslo-log
oslo-i18n==6.1.0
# via
# aodhclient
# osc-lib
# oslo-concurrency
# oslo-config
# oslo-log
# oslo-utils
# python-barbicanclient
# python-ceilometerclient
# python-cinderclient
# python-glanceclient
# python-heatclient
# python-keystoneclient
# python-magnumclient
# python-neutronclient
# python-novaclient
# python-openstackclient
# python-watcherclient
oslo-log==5.3.0
# via
# python-cloudkittyclient
# python-magnumclient
# python-manilaclient
# python-neutronclient
oslo-serialization==5.2.0
# via
# aodhclient
# oslo-log
# osprofiler
# python-barbicanclient
# python-ceilometerclient
# python-designateclient
# python-heatclient
# python-keystoneclient
# python-magnumclient
# python-manilaclient
# python-neutronclient
# python-novaclient
# python-octaviaclient
# python-watcherclient
oslo-utils==6.2.1
# via
# aodhclient
# osc-lib
# oslo-concurrency
# oslo-log
# oslo-serialization
# osprofiler
# python-barbicanclient
# python-ceilometerclient
# python-cinderclient
# python-cloudkittyclient
# python-designateclient
# python-glanceclient
# python-heatclient
# python-ironicclient
# python-keystoneclient
# python-magnumclient
# python-manilaclient
# python-neutronclient
# python-novaclient
# python-octaviaclient
# python-openstackclient
# python-watcherclient
osprofiler==4.1.0
# via aodhclient
packaging==23.2
# via
# oslo-utils
# pyproject-api
# tox
paramiko==2.12.0
# via juju
pbr==5.11.1
# via
# aodhclient
# futurist
# jsonpath-rw-ext
# keystoneauth1
# openstacksdk
# os-service-types
# osc-lib
# oslo-concurrency
# oslo-context
# oslo-i18n
# oslo-log
# oslo-serialization
# python-barbicanclient
# python-ceilometerclient
# python-cinderclient
# python-cloudkittyclient
# python-designateclient
# python-glanceclient
# python-heatclient
# python-ironicclient
# python-keystoneclient
# python-magnumclient
# python-manilaclient
# python-neutronclient
# python-novaclient
# python-octaviaclient
# python-openstackclient
# python-watcherclient
# stevedore
pika==1.3.2
# via zaza-openstack
pkgutil-resolve-name==1.3.10
# via jsonschema
platformdirs==3.11.0
# via
# openstacksdk
# tox
# virtualenv
pluggy==1.3.0
# via tox
ply==3.11
# via jsonpath-rw
prettytable==0.7.2
# via
# cliff
# futurist
# osprofiler
# python-ceilometerclient
# python-cinderclient
# python-glanceclient
# python-heatclient
# python-magnumclient
# python-manilaclient
# python-novaclient
protobuf==3.20.3
# via macaroonbakery
pyasn1==0.5.0
# via
# juju
# pyasn1-modules
# rsa
pyasn1-modules==0.3.0
# via google-auth
pycparser==2.21
# via cffi
pyinotify==0.9.6
# via oslo-log
pymacaroons==0.13.0
# via macaroonbakery
pymongo==4.5.0
# via python-libmaas
pynacl==1.5.0
# via
# macaroonbakery
# paramiko
# pymacaroons
pyopenssl==21.0.0
# via
# python-glanceclient
# zaza-openstack
pyparsing==3.1.1
# via
# aodhclient
# oslo-utils
pyperclip==1.8.2
# via cmd2
pyproject-api==1.6.1
# via tox
pyrfc3339==1.1
# via
# juju
# macaroonbakery
python-barbicanclient==4.10.0
# via zaza-openstack
python-ceilometerclient==2.9.0
# via zaza-openstack
python-cinderclient==5.0.2
# via
# python-openstackclient
# zaza-openstack
python-cloudkittyclient==4.8.0
# via zaza-openstack
python-dateutil==2.8.2
# via
# botocore
# gnocchiclient
# kubernetes
# oslo-log
python-designateclient==2.12.0
# via zaza-openstack
python-glanceclient==4.4.0
# via
# python-openstackclient
# zaza-openstack
python-heatclient==1.18.1
# via zaza-openstack
python-ironicclient==5.4.0
# via zaza-openstack
python-keystoneclient==3.21.0
# via
# python-manilaclient
# python-neutronclient
# python-openstackclient
# zaza-openstack
python-libmaas==0.6.8
# via zaza
python-magnumclient==4.2.0
# via zaza-openstack
python-manilaclient==1.29.0
# via zaza-openstack
python-neutronclient==6.14.1
# via
# python-octaviaclient
# zaza-openstack
python-novaclient==15.1.1
# via
# python-openstackclient
# zaza-openstack
python-octaviaclient==1.10.1
# via zaza-openstack
python-openstackclient==4.0.2
# via python-octaviaclient
python-swiftclient==3.8.1
# via
# python-heatclient
# zaza-openstack
python-watcherclient==4.2.0
# via zaza-openstack
pytz==2023.3.post1
# via
# babel
# oslo-serialization
# oslo-utils
# pyrfc3339
# python-libmaas
pyyaml==6.0.1
# via
# cliff
# juju
# juju-wait
# jujubundlelib
# kubernetes
# openstacksdk
# oslo-config
# python-cloudkittyclient
# python-heatclient
# python-ironicclient
# python-libmaas
# python-watcherclient
# zaza
# zaza-openstack
referencing==0.30.2
# via
# jsonschema
# jsonschema-specifications
requests==2.31.0
# via
# hvac
# keystoneauth1
# kubernetes
# macaroonbakery
# oslo-config
# osprofiler
# python-barbicanclient
# python-ceilometerclient
# python-cinderclient
# python-designateclient
# python-glanceclient
# python-heatclient
# python-ironicclient
# python-keystoneclient
# python-magnumclient
# python-manilaclient
# python-neutronclient
# python-octaviaclient
# python-swiftclient
# requests-oauthlib
# theblues
requests-oauthlib==1.3.1
# via kubernetes
requestsexceptions==1.4.0
# via openstacksdk
rfc3986==2.0.0
# via oslo-config
rpds-py==0.10.6
# via
# jsonschema
# referencing
rsa==4.9
# via google-auth
s3transfer==0.7.0
# via boto3
simplejson==3.19.2
# via
# osc-lib
# python-cinderclient
# python-manilaclient
# python-neutronclient
# python-novaclient
six==1.16.0
# via
# cryptography
# futurist
# gnocchiclient
# jsonpath-rw
# kubernetes
# macaroonbakery
# oslo-config
# paramiko
# pymacaroons
# pyopenssl
# python-barbicanclient
# python-ceilometerclient
# python-cinderclient
# python-dateutil
# python-designateclient
# python-heatclient
# python-keystoneclient
# python-manilaclient
# python-neutronclient
# python-novaclient
# python-octaviaclient
# python-openstackclient
# python-swiftclient
# python-watcherclient
stevedore==5.1.0
# via
# cliff
# dogpile-cache
# keystoneauth1
# osc-lib
# oslo-config
# python-ceilometerclient
# python-designateclient
# python-ironicclient
# python-keystoneclient
# python-magnumclient
tenacity==8.2.3
# via
# zaza
# zaza-openstack
terminaltables==3.1.10
# via python-libmaas
theblues==0.5.2
# via juju
tomli==2.0.1
# via
# pyproject-api
# tox
toposort==1.10
# via juju
tox==4.11.3
# via -r src/test-requirements.in
trustme==1.1.0
# via zaza-openstack
typing-extensions==4.8.0
# via
# dogpile-cache
# typing-inspect
typing-inspect==0.9.0
# via juju
tzdata==2023.3
# via
# oslo-serialization
# oslo-utils
ujson==5.8.0
# via gnocchiclient
urllib3==1.26.18
# via
# botocore
# kubernetes
# requests
virtualenv==20.24.6
# via tox
warlock==2.0.1
# via python-glanceclient
wcwidth==0.2.8
# via cmd2
webob==1.8.7
# via osprofiler
websocket-client==1.6.4
# via kubernetes
websockets==7.0
# via juju
wrapt==1.15.0
# via
# debtcollector
# python-glanceclient
yarl==1.9.2
# via aiohttp
zaza @ git+https://github.com/openstack-charmers/zaza.git@stable/bobcat
# via
# -r src/test-requirements.in
# zaza-openstack
zaza-openstack @ git+https://github.com/openstack-charmers/zaza-openstack-tests.git@stable/bobcat
# via -r src/test-requirements.in
zipp==3.17.0
# via
# importlib-metadata
# importlib-resources

View File

@ -8,5 +8,5 @@
tox
# Functional Test Requirements (let Zaza's dependencies solve all dependencies here!)
git+https://github.com/openstack-charmers/zaza.git#egg=zaza
git+https://github.com/openstack-charmers/zaza-openstack-tests.git#egg=zaza.openstack
git+https://github.com/openstack-charmers/zaza.git@stable/bobcat#egg=zaza
git+https://github.com/openstack-charmers/zaza-openstack-tests.git@stable/bobcat#egg=zaza.openstack

View File

@ -28,13 +28,13 @@ applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
gnocchi-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
vault-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
mysql-innodb-cluster:
charm: ch:mysql-innodb-cluster
@ -43,13 +43,13 @@ applications:
- '0'
- '1'
- '2'
channel: latest/edge
channel: 8.0/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
to:
- '3'
channel: latest/edge
channel: 3.9/edge
keystone:
charm: ch:keystone
num_units: 1
@ -57,7 +57,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '4'
channel: latest/edge
channel: 2023.2/edge
ceilometer:
charm: ch:ceilometer
num_units: 1
@ -65,7 +65,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '5'
channel: latest/edge
channel: 2023.2/edge
gnocchi:
series: *series
charm: ../../../gnocchi_ubuntu-22.04-amd64.charm
@ -104,14 +104,14 @@ applications:
zone: 1
to:
- '8'
channel: latest/edge
channel: 2023.2/edge
vault:
charm: ch:vault
num_units: 1
series: *series
to:
- '9'
channel: latest/edge
channel: 1.8/edge
relations:
- - keystone:shared-db
- keystone-mysql-router:shared-db

View File

@ -31,10 +31,10 @@ applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
gnocchi-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
mysql-innodb-cluster:
charm: ch:mysql-innodb-cluster
@ -43,14 +43,14 @@ applications:
- '0'
- '1'
- '2'
channel: latest/edge
channel: 8.0/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
to:
- '3'
channel: latest/edge
channel: 3.9/edge
keystone:
charm: ch:keystone
@ -59,7 +59,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '4'
channel: latest/edge
channel: 2023.2/edge
ceilometer:
charm: ch:ceilometer
@ -68,7 +68,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '5'
channel: latest/edge
channel: 2023.2/edge
ceph-osd:
charm: ch:ceph-osd
@ -81,7 +81,7 @@ applications:
- '6'
- '7'
- '8'
channel: latest/edge
channel: reef/edge
ceph-mon:
charm: ch:ceph-mon
@ -94,7 +94,7 @@ applications:
- '9'
- '10'
- '11'
channel: latest/edge
channel: reef/edge
gnocchi:
series: *series

View File

@ -31,10 +31,10 @@ applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
gnocchi-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
mysql-innodb-cluster:
charm: ch:mysql-innodb-cluster
@ -43,14 +43,14 @@ applications:
- '0'
- '1'
- '2'
channel: latest/edge
channel: 8.0/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
to:
- '3'
channel: latest/edge
channel: 3.9/edge
keystone:
charm: ch:keystone
@ -59,7 +59,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '4'
channel: latest/edge
channel: 2023.2/edge
ceilometer:
charm: ch:ceilometer
@ -68,7 +68,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '5'
channel: latest/edge
channel: 2023.2/edge
ceph-osd:
charm: ch:ceph-osd
@ -81,7 +81,7 @@ applications:
- '6'
- '7'
- '8'
channel: latest/edge
channel: reef/edge
ceph-mon:
charm: ch:ceph-mon
@ -94,7 +94,7 @@ applications:
- '9'
- '10'
- '11'
channel: latest/edge
channel: reef/edge
gnocchi:
series: *series

View File

@ -1,154 +0,0 @@
variables:
openstack-origin: &openstack-origin distro
local_overlay_enabled: False
series: &series lunar
machines:
'0':
constraints: mem=3072M
'1':
constraints: mem=3072M
'2':
constraints: mem=3072M
'3':
'4':
'5':
'6':
'7':
'8':
'9':
'10':
'11':
'12':
'13':
series: focal
# We specify machine placements for these to improve iteration
# time, given that machine "0" comes up way before machine "6"
applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
gnocchi-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
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
options:
source: *openstack-origin
to:
- '3'
channel: latest/edge
keystone:
charm: ch:keystone
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '4'
channel: latest/edge
ceilometer:
charm: ch:ceilometer
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '5'
channel: latest/edge
ceph-osd:
charm: ch:ceph-osd
num_units: 3
storage:
osd-devices: 'cinder,10G'
options:
source: *openstack-origin
to:
- '6'
- '7'
- '8'
channel: latest/edge
ceph-mon:
charm: ch:ceph-mon
num_units: 3
options:
expected-osd-count: 3
monitor-count: '3'
source: *openstack-origin
to:
- '9'
- '10'
- '11'
channel: latest/edge
gnocchi:
series: *series
charm: ../../../gnocchi_ubuntu-23.04-amd64.charm
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '12'
memcached:
charm: ch:memcached
num_units: 1
# Note that holding memcached at focal as it's not available at lunar yet.
series: focal
to:
- '13'
relations:
- - 'keystone:shared-db'
- 'keystone-mysql-router:shared-db'
- - 'keystone-mysql-router:db-router'
- 'mysql-innodb-cluster:db-router'
- - 'ceph-osd:mon'
- 'ceph-mon:osd'
- - 'ceilometer:amqp'
- 'rabbitmq-server:amqp'
- - 'ceilometer:identity-credentials'
- 'keystone:identity-credentials'
- - 'ceilometer:identity-notifications'
- 'keystone:identity-notifications'
- - 'ceilometer:metric-service'
- 'gnocchi:metric-service'
- - 'gnocchi:identity-service'
- 'keystone:identity-service'
- - 'gnocchi:shared-db'
- 'gnocchi-mysql-router:shared-db'
- - 'gnocchi-mysql-router:db-router'
- 'mysql-innodb-cluster:db-router'
- - 'gnocchi:storage-ceph'
- 'ceph-mon:client'
- - 'gnocchi:coordinator-memcached'
- 'memcached:cache'

View File

@ -31,10 +31,10 @@ applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
gnocchi-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
mysql-innodb-cluster:
charm: ch:mysql-innodb-cluster
@ -43,14 +43,14 @@ applications:
- '0'
- '1'
- '2'
channel: latest/edge
channel: 8.0/edge
rabbitmq-server:
charm: ch:rabbitmq-server
num_units: 1
to:
- '3'
channel: latest/edge
channel: 3.9/edge
keystone:
charm: ch:keystone
@ -59,7 +59,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '4'
channel: latest/edge
channel: 2023.2/edge
ceilometer:
charm: ch:ceilometer
@ -68,7 +68,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '5'
channel: latest/edge
channel: 2023.2/edge
ceph-osd:
charm: ch:ceph-osd
@ -81,7 +81,7 @@ applications:
- '6'
- '7'
- '8'
channel: latest/edge
channel: reef/edge
ceph-mon:
charm: ch:ceph-mon
@ -94,7 +94,7 @@ applications:
- '9'
- '10'
- '11'
channel: latest/edge
channel: reef/edge
gnocchi:
series: *series

View File

@ -8,7 +8,6 @@ smoke_bundles:
dev_bundles:
- test-s3: jammy-bobcat-s3
- test-s3: lunar-antelope-s3
- test-s3: mantic-bobcat-s3
configure:
@ -43,5 +42,4 @@ target_deploy_status:
tests_options:
force_deploy:
- lunar-antelope-s3
- mantic-bobcat-s3

View File

@ -6,54 +6,48 @@
[tox]
envlist = pep8
skipsdist = True
# NOTE: Avoid build/test env pollution by not enabling sitepackages.
sitepackages = False
# NOTE: Avoid false positives by not skipping missing interpreters.
skip_missing_interpreters = False
# NOTES:
# * We avoid the new dependency resolver by pinning pip < 20.3, see
# https://github.com/pypa/pip/issues/9187
# * Pinning dependencies requires tox >= 3.2.0, see
# https://tox.readthedocs.io/en/latest/config.html#conf-requires
# * It is also necessary to pin virtualenv as a newer virtualenv would still
# lead to fetching the latest pip in the func* tox targets, see
# https://stackoverflow.com/a/38133283
requires = pip < 20.3
virtualenv < 20.0
# NOTE: https://wiki.canonical.com/engineering/OpenStack/InstallLatestToxOnOsci
minversion = 3.18.0
[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
allowlist_externals = juju
passenv = HOME TERM CS_* OS_* TEST_*
deps = -r{toxinidir}/test-requirements.txt
install_command =
pip install {opts} {packages}
passenv =
HOME
TERM
CS_*
OS_*
TEST_*
deps = -r{toxinidir}/test-requirements-py38.txt
[testenv:pep8]
basepython = python3
basepython = python3.8
commands = charm-proof
[testenv:func-noop]
basepython = python3
basepython = python3.8
commands =
functest-run-suite --help
[testenv:func]
basepython = python3
basepython = python3.8
commands =
functest-run-suite --keep-model
[testenv:func-smoke]
basepython = python3
basepython = python3.8
commands =
functest-run-suite --keep-model --smoke
[testenv:func-target]
basepython = python3
basepython = python3.8
commands =
functest-run-suite --keep-model --bundle {posargs}

View File

@ -1,5 +1,5 @@
boto3
git+https://github.com/openstack/charms.openstack.git#egg=charms.openstack
git+https://github.com/openstack/charms.openstack.git@stable/bobcat#egg=charms.openstack
git+https://github.com/juju/charm-helpers.git#egg=charmhelpers
git+https://github.com/juju/charm-helpers.git@stable/bobcat#egg=charmhelpers

117
test-requirements-py310.txt Normal file
View File

@ -0,0 +1,117 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# pip-compile --output-file=test-requirements-py310.txt test-requirements.in
#
certifi==2023.7.22
# via requests
cffi==1.16.0
# via cryptography
charmhelpers==1.2.1
# via charms-reactive
charms-openstack @ git+https://github.com/openstack/charms.openstack.git@stable/bobcat
# via -r test-requirements.in
charms-reactive==1.5.2
# via -r test-requirements.in
charset-normalizer==3.3.1
# via requests
cliff==2.18.0
# via
# -r test-requirements.in
# stestr
cmd2==0.8.9
# via cliff
coverage==7.3.2
# via -r test-requirements.in
cryptography==3.3.2
# via -r test-requirements.in
extras==1.0.0
# via stestr
fixtures==3.0.0
# via
# stestr
# testtools
hvac==2.0.0
# via -r test-requirements.in
idna==3.4
# via requests
iso8601==2.1.0
# via python-subunit
jinja2==3.1.2
# via charmhelpers
lxml==4.9.3
# via -r test-requirements.in
markupsafe==2.1.3
# via jinja2
mock==5.1.0
# via -r test-requirements.in
netaddr==0.9.0
# via charmhelpers
netifaces==0.11.0
# via -r test-requirements.in
nose==1.3.7
# via -r test-requirements.in
pbr==5.6.0
# via
# -r test-requirements.in
# charmhelpers
# cliff
# fixtures
# stestr
# stevedore
# testtools
prettytable==0.7.2
# via cliff
psutil==5.9.6
# via -r test-requirements.in
psycopg2-binary==2.9.9
# via -r test-requirements.in
pyaml==23.9.7
# via charms-reactive
pycparser==2.21
# via cffi
pyparsing==2.4.7
# via
# -r test-requirements.in
# cliff
# cmd2
pyperclip==1.8.2
# via cmd2
python-subunit==1.4.3
# via stestr
pyyaml==6.0.1
# via
# charmhelpers
# cliff
# pyaml
# stestr
requests==2.31.0
# via
# -r test-requirements.in
# hvac
six==1.16.0
# via
# cliff
# cmd2
# cryptography
# fixtures
stestr==4.1.0
# via -r test-requirements.in
stevedore==5.1.0
# via cliff
tenacity==8.2.3
# via -r test-requirements.in
testtools==2.6.0
# via
# fixtures
# python-subunit
# stestr
tomlkit==0.12.1
# via stestr
urllib3==2.0.7
# via requests
voluptuous==0.13.1
# via stestr
wcwidth==0.2.8
# via cmd2

117
test-requirements-py38.txt Normal file
View File

@ -0,0 +1,117 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
# pip-compile --output-file=test-requirements-py38.txt test-requirements.in
#
certifi==2023.7.22
# via requests
cffi==1.16.0
# via cryptography
charmhelpers==1.2.1
# via charms-reactive
charms-openstack @ git+https://github.com/openstack/charms.openstack.git@stable/bobcat
# via -r test-requirements.in
charms-reactive==1.5.2
# via -r test-requirements.in
charset-normalizer==3.3.1
# via requests
cliff==2.18.0
# via
# -r test-requirements.in
# stestr
cmd2==0.8.9
# via cliff
coverage==7.3.2
# via -r test-requirements.in
cryptography==3.3.2
# via -r test-requirements.in
extras==1.0.0
# via stestr
fixtures==3.0.0
# via
# stestr
# testtools
hvac==2.0.0
# via -r test-requirements.in
idna==3.4
# via requests
iso8601==2.1.0
# via python-subunit
jinja2==3.1.2
# via charmhelpers
lxml==4.9.3
# via -r test-requirements.in
markupsafe==2.1.3
# via jinja2
mock==5.1.0
# via -r test-requirements.in
netaddr==0.9.0
# via charmhelpers
netifaces==0.11.0
# via -r test-requirements.in
nose==1.3.7
# via -r test-requirements.in
pbr==5.6.0
# via
# -r test-requirements.in
# charmhelpers
# cliff
# fixtures
# stestr
# stevedore
# testtools
prettytable==0.7.2
# via cliff
psutil==5.9.6
# via -r test-requirements.in
psycopg2-binary==2.9.9
# via -r test-requirements.in
pyaml==23.9.7
# via charms-reactive
pycparser==2.21
# via cffi
pyparsing==2.4.7
# via
# -r test-requirements.in
# cliff
# cmd2
pyperclip==1.8.2
# via cmd2
python-subunit==1.4.3
# via stestr
pyyaml==6.0.1
# via
# charmhelpers
# cliff
# pyaml
# stestr
requests==2.31.0
# via
# -r test-requirements.in
# hvac
six==1.16.0
# via
# cliff
# cmd2
# cryptography
# fixtures
stestr==4.1.0
# via -r test-requirements.in
stevedore==5.1.0
# via cliff
tenacity==8.2.3
# via -r test-requirements.in
testtools==2.6.0
# via
# fixtures
# python-subunit
# stestr
tomlkit==0.12.1
# via stestr
urllib3==2.0.7
# via requests
voluptuous==0.13.1
# via stestr
wcwidth==0.2.8
# via cmd2

View File

@ -18,7 +18,7 @@ mock>=1.2
nose>=1.3.7
coverage>=3.6
git+https://github.com/openstack/charms.openstack.git#egg=charms.openstack
git+https://github.com/openstack/charms.openstack.git@stable/bobcat#egg=charms.openstack
#
# Revisit for removal / mock improvement:
#

28
tox.ini
View File

@ -34,51 +34,45 @@ allowlist_externals =
bash
tox
deps =
-r{toxinidir}/requirements.txt
-r{toxinidir}/merged-requirements-py38.txt
[testenv:build]
basepython = python3
deps =
# 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`.
# directly run `charmcraft -v pack
commands =
charmcraft clean
charmcraft -v pack
charmcraft clean
[testenv:build-reactive]
basepython = python3
commands =
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
commands =
charm-build --log-level DEBUG --write-lock-file -o {toxinidir}/build/builds src {posargs}
[testenv:py3]
basepython = python3
deps = -r{toxinidir}/test-requirements.txt
deps = -r{toxinidir}/test-requirements-py310.txt
commands = stestr run --slowest {posargs}
[testenv:py38]
basepython = python3.8
deps = -r{toxinidir}/test-requirements-py38.txt
commands = stestr run --slowest {posargs}
[testenv:py310]
basepython = python3.10
deps = -r{toxinidir}/test-requirements.txt
deps = -r{toxinidir}/test-requirements-py310.txt
commands = stestr run --slowest {posargs}
[testenv:pep8]
basepython = python3
deps = flake8==3.9.2
git+https://github.com/juju/charm-tools.git
commands = flake8 {posargs} src unit_tests
[testenv:cover]
# Technique based heavily upon
# https://github.com/openstack/nova/blob/master/tox.ini
basepython = python3
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
deps = -r{toxinidir}/merged-requirements-py310.txt
setenv =
{[testenv]setenv}
PYTHON=coverage run