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: I962b8523d02f2a1fb269119fb7aa45e730964af5
This commit is contained in:
Alex Kavanagh 2023-10-17 17:58:51 +01:00 committed by Felipe Reyes
parent 189316a7c2
commit 9d7b4463bc
24 changed files with 2337 additions and 435 deletions

View File

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

View File

@ -1,7 +0,0 @@
# NOTES(lourot):
# * We don't install charmcraft via pip anymore because it anyway spins up a
# container and scp the system's charmcraft snap inside it. So the charmcraft
# snap is necessary on the system anyway.
# * `tox -e build` successfully validated with charmcraft 1.2.1
cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35.

View File

@ -1,4 +1,4 @@
repo: https://github.com/juju/charm-helpers
repo: https://github.com/juju/charm-helpers@stable/bobcat
destination: charmhelpers
include:
- core

View File

@ -29,9 +29,6 @@ bases:
- name: ubuntu
channel: "22.04"
architectures: [amd64, s390x, ppc64el, arm64]
- name: ubuntu
channel: "23.04"
architectures: [amd64, s390x, ppc64el, arm64]
- name: ubuntu
channel: "23.10"
architectures: [amd64, s390x, ppc64el, arm64]

View File

@ -414,18 +414,27 @@ def get_requests_for_local_unit(relation_name=None):
is_legacy_request = set(sent).intersection(legacy_keys)
for unit in related_units(rid):
data = relation_get(rid=rid, unit=unit)
if data.get(raw_certs_key):
bundles.append({
'ca': data['ca'],
'chain': data.get('chain'),
'certs': json.loads(data[raw_certs_key])})
elif is_legacy_request:
bundles.append({
'ca': data['ca'],
'chain': data.get('chain'),
'certs': {sent['common_name']:
{'cert': data.get(local_name + '.server.cert'),
'key': data.get(local_name + '.server.key')}}})
# Note: Bug#2028683 - data may not be available if the certificates
# relation hasn't been populated by the providing charm. If no 'ca'
# in the data then don't attempt the bundle at all.
if data.get('ca'):
if data.get(raw_certs_key):
bundles.append({
'ca': data['ca'],
'chain': data.get('chain'),
'certs': json.loads(data[raw_certs_key])
})
elif is_legacy_request:
bundles.append({
'ca': data['ca'],
'chain': data.get('chain'),
'certs': {
sent['common_name']: {
'cert': data.get(local_name + '.server.cert'),
'key': data.get(local_name + '.server.key')
}
}
})
return bundles

View File

@ -1748,9 +1748,9 @@ class WSGIWorkerConfigContext(WorkerConfigContext):
def __call__(self):
total_processes = _calculate_workers()
enable_wsgi_rotation = config('wsgi-rotation')
if enable_wsgi_rotation is None:
enable_wsgi_rotation = True
enable_wsgi_socket_rotation = config('wsgi-socket-rotation')
if enable_wsgi_socket_rotation is None:
enable_wsgi_socket_rotation = True
ctxt = {
"service_name": self.service_name,
"user": self.user,
@ -1764,7 +1764,7 @@ class WSGIWorkerConfigContext(WorkerConfigContext):
"public_processes": int(math.ceil(self.public_process_weight *
total_processes)),
"threads": 1,
"wsgi_rotation": enable_wsgi_rotation,
"wsgi_socket_rotation": enable_wsgi_socket_rotation,
}
return ctxt

View File

@ -12,7 +12,7 @@ Listen {{ admin_port }}
Listen {{ public_port }}
{% endif -%}
{% if wsgi_rotation -%}
{% if wsgi_socket_rotation -%}
WSGISocketRotation On
{% else -%}
WSGISocketRotation Off

View File

@ -12,7 +12,7 @@ Listen {{ admin_port }}
Listen {{ public_port }}
{% endif -%}
{% if wsgi_rotation -%}
{% if wsgi_socket_rotation -%}
WSGISocketRotation On
{% else -%}
WSGISocketRotation Off

View File

@ -585,7 +585,6 @@ def get_installed_os_version():
return openstack_release().get('OPENSTACK_CODENAME')
@cached
def openstack_release():
"""Return /etc/os-release in a dict."""
d = {}

View File

@ -158,15 +158,19 @@ def get_osd_settings(relation_name):
return _order_dict_by_key(osd_settings)
def send_application_name(relid=None):
def send_application_name(relid=None, app_name=None):
"""Send the application name down the relation.
:param relid: Relation id to set application name in.
:type relid: str
:param app_name: Application name to send in the relation.
:type app_name: str
"""
if app_name is None:
app_name = application_name()
relation_set(
relation_id=relid,
relation_settings={'application-name': application_name()})
relation_settings={'application-name': app_name})
def send_osd_settings():

View File

@ -151,6 +151,7 @@ import contextlib
import datetime
import itertools
import json
import logging
import os
import pprint
import sqlite3
@ -521,6 +522,42 @@ _KV = None
def kv():
global _KV
# If we are running unit tests, it is useful to go into memory-backed KV store to
# avoid concurrency issues when running multiple tests. This is not a
# problem when juju is running normally.
env_var = os.environ.get("CHARM_HELPERS_TESTMODE", "auto").lower()
if env_var not in ["auto", "no", "yes"]:
logging.warning("Unknown value for CHARM_HELPERS_TESTMODE '%s'"
", assuming 'no'", env_var)
env_var = "no"
if env_var == "no":
in_memory_db = False
elif env_var == "yes":
in_memory_db = True
elif env_var == "auto":
# If UNIT_STATE_DB is set, respect this request
if "UNIT_STATE_DB" in os.environ:
in_memory_db = False
# Autodetect normal juju execution by looking for juju variables
elif "JUJU_CHARM_DIR" in os.environ or "JUJU_UNIT_NAME" in os.environ:
in_memory_db = False
else:
# We are probably running in unit test mode
logging.warning("Auto-detected unit test environment for KV store.")
in_memory_db = True
else:
# Help the linter realise that in_memory_db is always set
raise Exception("Cannot reach this line")
if _KV is None:
_KV = Storage()
if in_memory_db:
_KV = Storage(":memory:")
else:
_KV = Storage()
else:
if in_memory_db and _KV.db_path != ":memory:":
logging.warning("Running with in_memory_db and KV is not set to :memory:")
return _KV

View File

@ -52,7 +52,7 @@ def _snap_exec(commands):
:param commands: List commands
:return: Integer exit code
"""
assert type(commands) == list
assert isinstance(commands, list)
retry_count = 0
return_code = None

View File

@ -0,0 +1,727 @@
#
# 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
#
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
# jsonschema
# referencing
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
certifi==2023.7.22
# via
# kubernetes
# requests
cffi==1.16.0
# via
# cryptography
# pynacl
charset-normalizer==3.3.1
# via
# aiohttp
# requests
cliff==2.18.0
# via
# -r test-requirements.in
# aodhclient
# gnocchiclient
# osc-lib
# python-barbicanclient
# python-cloudkittyclient
# python-designateclient
# python-heatclient
# python-ironicclient
# python-neutronclient
# python-octaviaclient
# python-openstackclient
# python-watcherclient
# stestr
# tempest
cmd2==0.8.9
# via cliff
colorclass==2.2.2
# via python-libmaas
coverage==7.3.2
# via -r test-requirements.in
croniter==2.0.1
# via -r test-requirements.in
cryptography==3.3.2
# via
# -r requirements.in
# openstacksdk
# paramiko
# pyopenssl
# python-magnumclient
# tempest
# 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
# tempest
decorator==5.1.1
# via
# dogpile-cache
# jsonpath-rw
# openstacksdk
# python-magnumclient
defusedxml==0.7.1
# via tempest
dnspython==2.4.2
# via
# -r requirements.in
# pymongo
# zaza-openstack
dogpile-cache==1.2.2
# via
# openstacksdk
# python-ironicclient
extras==1.0.0
# via stestr
fasteners==0.19
# via
# oslo-concurrency
# tempest
fixtures==3.0.0
# via
# stestr
# tempest
# testtools
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
iso8601==2.1.0
# via
# gnocchiclient
# keystoneauth1
# openstacksdk
# oslo-utils
# python-ceilometerclient
# python-heatclient
# python-neutronclient
# python-novaclient
# python-subunit
jinja2==3.1.2
# via
# -r requirements.in
# 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
# tempest
# 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.7.20
# via
# -r requirements.in
# oslo-config
# oslo-utils
# osprofiler
# python-neutronclient
# tempest
netifaces==0.11.0
# via
# -r requirements.in
# 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.1.0
# 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
# tempest
oslo-config==6.11.3
# via
# oslo-concurrency
# oslo-log
# python-keystoneclient
# python-manilaclient
# tempest
# 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
# tempest
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
# tempest
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
# tempest
osprofiler==4.1.0
# via aodhclient
packaging==23.2
# via oslo-utils
paramiko==2.12.0
# via
# juju
# tempest
pbr==5.6.0
# via
# -r requirements.in
# aodhclient
# cliff
# fixtures
# 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
# stestr
# stevedore
# tempest
# testtools
pika==1.3.2
# via zaza-openstack
platformdirs==3.11.0
# via openstacksdk
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
# tempest
protobuf==3.20.3
# via macaroonbakery
psutil==1.2.1
# via
# -r requirements.in
# -r test-requirements.in
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==2.4.7
# via
# -r test-requirements.in
# aodhclient
# cliff
# cmd2
# oslo-utils
pyperclip==1.8.2
# via cmd2
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.1.0
# via zaza-openstack
python-dateutil==2.8.2
# via
# botocore
# croniter
# 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-subunit==1.4.3
# via
# stestr
# tempest
python-swiftclient==3.8.1
# via
# python-heatclient
# zaza-openstack
python-watcherclient==4.2.0
# via zaza-openstack
pytz==2023.3.post1
# via
# croniter
# oslo-serialization
# oslo-utils
# pyrfc3339
# python-libmaas
pyudev==0.24.1
# via -r test-requirements.in
pyyaml==6.0.1
# via
# cliff
# juju
# juju-wait
# jujubundlelib
# kubernetes
# openstacksdk
# oslo-config
# python-cloudkittyclient
# python-heatclient
# python-ironicclient
# python-libmaas
# python-watcherclient
# stestr
# tempest
# zaza
# zaza-openstack
referencing==0.30.2
# via
# jsonschema
# jsonschema-specifications
requests==2.31.0
# via
# -r test-requirements.in
# 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
# -r requirements.in
# osc-lib
# python-cinderclient
# python-manilaclient
# python-neutronclient
# python-novaclient
six==1.16.0
# via
# -r requirements.in
# cliff
# cmd2
# cryptography
# fixtures
# 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
stestr==4.1.0
# via
# -r test-requirements.in
# tempest
stevedore==5.1.0
# via
# cliff
# dogpile-cache
# keystoneauth1
# osc-lib
# oslo-config
# python-ceilometerclient
# python-designateclient
# python-ironicclient
# python-keystoneclient
# python-magnumclient
# tempest
tempest @ git+https://opendev.org/openstack/tempest.git
# via -r test-requirements.in
tenacity==8.2.3
# via
# zaza
# zaza-openstack
terminaltables==3.1.10
# via python-libmaas
testtools==2.6.0
# via
# fixtures
# python-subunit
# stestr
# tempest
theblues==0.5.2
# via juju
tomlkit==0.12.1
# via stestr
toposort==1.10
# via juju
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
# tempest
voluptuous==0.13.1
# via stestr
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==12.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 test-requirements.in
# zaza-openstack
zaza-openstack @ git+https://github.com/openstack-charmers/zaza-openstack-tests.git@stable/bobcat
# via -r test-requirements.in

View File

@ -0,0 +1,736 @@
#
# 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
#
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
# jsonschema
# referencing
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
certifi==2023.7.22
# via
# kubernetes
# requests
cffi==1.16.0
# via
# cryptography
# pynacl
charset-normalizer==3.3.1
# via
# aiohttp
# requests
cliff==2.18.0
# via
# -r test-requirements.in
# aodhclient
# gnocchiclient
# osc-lib
# python-barbicanclient
# python-cloudkittyclient
# python-designateclient
# python-heatclient
# python-ironicclient
# python-neutronclient
# python-octaviaclient
# python-openstackclient
# python-watcherclient
# stestr
# tempest
cmd2==0.8.9
# via cliff
colorclass==2.2.2
# via python-libmaas
coverage==7.3.2
# via -r test-requirements.in
croniter==2.0.1
# via -r test-requirements.in
cryptography==3.3.2
# via
# -r requirements.in
# openstacksdk
# paramiko
# pyopenssl
# python-magnumclient
# tempest
# 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
# tempest
decorator==5.1.1
# via
# dogpile-cache
# jsonpath-rw
# openstacksdk
# python-magnumclient
defusedxml==0.7.1
# via tempest
dnspython==2.4.2
# via
# -r requirements.in
# pymongo
# zaza-openstack
dogpile-cache==1.2.2
# via
# openstacksdk
# python-ironicclient
extras==1.0.0
# via stestr
fasteners==0.19
# via
# oslo-concurrency
# tempest
fixtures==3.0.0
# via
# stestr
# tempest
# testtools
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-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
# python-subunit
jinja2==3.1.2
# via
# -r requirements.in
# 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
# tempest
# 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.7.20
# via
# -r requirements.in
# oslo-config
# oslo-utils
# osprofiler
# python-neutronclient
# tempest
netifaces==0.11.0
# via
# -r requirements.in
# 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.1.0
# 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
# tempest
oslo-config==6.11.3
# via
# oslo-concurrency
# oslo-log
# python-keystoneclient
# python-manilaclient
# tempest
# 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
# tempest
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
# tempest
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
# tempest
osprofiler==4.1.0
# via aodhclient
packaging==23.2
# via oslo-utils
paramiko==2.12.0
# via
# juju
# tempest
pbr==5.6.0
# via
# -r requirements.in
# aodhclient
# cliff
# fixtures
# 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
# stestr
# stevedore
# tempest
# testtools
pika==1.3.2
# via zaza-openstack
pkgutil-resolve-name==1.3.10
# via jsonschema
platformdirs==3.11.0
# via openstacksdk
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
# tempest
protobuf==3.20.3
# via macaroonbakery
psutil==1.2.1
# via
# -r requirements.in
# -r test-requirements.in
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==2.4.7
# via
# -r test-requirements.in
# aodhclient
# cliff
# cmd2
# oslo-utils
pyperclip==1.8.2
# via cmd2
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.1.0
# via zaza-openstack
python-dateutil==2.8.2
# via
# botocore
# croniter
# 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-subunit==1.4.3
# via
# stestr
# tempest
python-swiftclient==3.8.1
# via
# python-heatclient
# zaza-openstack
python-watcherclient==4.2.0
# via zaza-openstack
pytz==2023.3.post1
# via
# babel
# croniter
# oslo-serialization
# oslo-utils
# pyrfc3339
# python-libmaas
pyudev==0.24.1
# via -r test-requirements.in
pyyaml==6.0.1
# via
# cliff
# juju
# juju-wait
# jujubundlelib
# kubernetes
# openstacksdk
# oslo-config
# python-cloudkittyclient
# python-heatclient
# python-ironicclient
# python-libmaas
# python-watcherclient
# stestr
# tempest
# zaza
# zaza-openstack
referencing==0.30.2
# via
# jsonschema
# jsonschema-specifications
requests==2.31.0
# via
# -r test-requirements.in
# 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
# -r requirements.in
# osc-lib
# python-cinderclient
# python-manilaclient
# python-neutronclient
# python-novaclient
six==1.16.0
# via
# -r requirements.in
# cliff
# cmd2
# cryptography
# fixtures
# 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
stestr==4.1.0
# via
# -r test-requirements.in
# tempest
stevedore==5.1.0
# via
# cliff
# dogpile-cache
# keystoneauth1
# osc-lib
# oslo-config
# python-ceilometerclient
# python-designateclient
# python-ironicclient
# python-keystoneclient
# python-magnumclient
# tempest
tempest @ git+https://opendev.org/openstack/tempest.git
# via -r test-requirements.in
tenacity==8.2.3
# via
# zaza
# zaza-openstack
terminaltables==3.1.10
# via python-libmaas
testtools==2.6.0
# via
# fixtures
# python-subunit
# stestr
# tempest
theblues==0.5.2
# via juju
tomlkit==0.12.1
# via stestr
toposort==1.10
# via juju
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
# tempest
voluptuous==0.13.1
# via stestr
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 test-requirements.in
# zaza-openstack
zaza-openstack @ git+https://github.com/openstack-charmers/zaza-openstack-tests.git@stable/bobcat
# via -r test-requirements.in
zipp==3.17.0
# via importlib-resources

View File

@ -18,7 +18,6 @@ tags:
- misc
series:
- jammy
- lunar
- mantic
provides:
nrpe-external-master:

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

@ -0,0 +1,724 @@
#
# 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
#
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
# jsonschema
# referencing
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
certifi==2023.7.22
# via
# kubernetes
# requests
cffi==1.16.0
# via
# cryptography
# pynacl
charset-normalizer==3.3.1
# via
# aiohttp
# requests
cliff==2.18.0
# via
# -r test-requirements.in
# aodhclient
# gnocchiclient
# osc-lib
# python-barbicanclient
# python-cloudkittyclient
# python-designateclient
# python-heatclient
# python-ironicclient
# python-neutronclient
# python-octaviaclient
# python-openstackclient
# python-watcherclient
# stestr
# tempest
cmd2==0.8.9
# via cliff
colorclass==2.2.2
# via python-libmaas
coverage==7.3.2
# via -r test-requirements.in
croniter==2.0.1
# via -r test-requirements.in
cryptography==3.3.2
# via
# openstacksdk
# paramiko
# pyopenssl
# python-magnumclient
# tempest
# 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
# tempest
decorator==5.1.1
# via
# dogpile-cache
# jsonpath-rw
# openstacksdk
# python-magnumclient
defusedxml==0.7.1
# via tempest
dnspython==2.4.2
# via
# pymongo
# zaza-openstack
dogpile-cache==1.2.2
# via
# openstacksdk
# python-ironicclient
extras==1.0.0
# via stestr
fasteners==0.19
# via
# oslo-concurrency
# tempest
fixtures==4.1.0
# via
# stestr
# tempest
# testtools
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-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
# python-subunit
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
# tempest
# 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
# tempest
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.1.0
# 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
# tempest
oslo-config==6.11.3
# via
# oslo-concurrency
# oslo-log
# python-keystoneclient
# python-manilaclient
# tempest
# 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
# tempest
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
# tempest
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
# tempest
osprofiler==4.1.0
# via aodhclient
packaging==23.2
# via oslo-utils
paramiko==2.12.0
# via
# juju
# tempest
pbr==5.11.1
# via
# aodhclient
# cliff
# fixtures
# 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
# stestr
# stevedore
# tempest
# testtools
pika==1.3.2
# via zaza-openstack
pkgutil-resolve-name==1.3.10
# via jsonschema
platformdirs==3.11.0
# via openstacksdk
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
# tempest
protobuf==3.20.3
# via macaroonbakery
psutil==5.9.6
# via -r test-requirements.in
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==2.4.7
# via
# -r test-requirements.in
# aodhclient
# cliff
# cmd2
# oslo-utils
pyperclip==1.8.2
# via cmd2
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.1.0
# via zaza-openstack
python-dateutil==2.8.2
# via
# botocore
# croniter
# 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-subunit==1.4.3
# via
# stestr
# tempest
python-swiftclient==3.8.1
# via
# python-heatclient
# zaza-openstack
python-watcherclient==4.2.0
# via zaza-openstack
pytz==2023.3.post1
# via
# babel
# croniter
# oslo-serialization
# oslo-utils
# pyrfc3339
# python-libmaas
pyudev==0.24.1
# via -r test-requirements.in
pyyaml==6.0.1
# via
# cliff
# juju
# juju-wait
# jujubundlelib
# kubernetes
# openstacksdk
# oslo-config
# python-cloudkittyclient
# python-heatclient
# python-ironicclient
# python-libmaas
# python-watcherclient
# stestr
# tempest
# zaza
# zaza-openstack
referencing==0.30.2
# via
# jsonschema
# jsonschema-specifications
requests==2.31.0
# via
# -r test-requirements.in
# 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
# cliff
# cmd2
# 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
stestr==4.1.0
# via
# -r test-requirements.in
# tempest
stevedore==5.1.0
# via
# cliff
# dogpile-cache
# keystoneauth1
# osc-lib
# oslo-config
# python-ceilometerclient
# python-designateclient
# python-ironicclient
# python-keystoneclient
# python-magnumclient
# tempest
tempest @ git+https://opendev.org/openstack/tempest.git
# via -r test-requirements.in
tenacity==8.2.3
# via
# zaza
# zaza-openstack
terminaltables==3.1.10
# via python-libmaas
testtools==2.6.0
# via
# python-subunit
# stestr
# tempest
theblues==0.5.2
# via juju
tomlkit==0.12.1
# via stestr
toposort==1.10
# via juju
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
# tempest
voluptuous==0.13.1
# via stestr
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 test-requirements.in
# zaza-openstack
zaza-openstack @ git+https://github.com/openstack-charmers/zaza-openstack-tests.git@stable/bobcat
# via -r test-requirements.in
zipp==3.17.0
# via importlib-resources

View File

@ -19,8 +19,8 @@ cliff<3.0.0
coverage>=4.5.2
pyudev # for ceph-* charm unit tests (need to fix the ceph-* charm unit tests/mocking)
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
# Needed for charm-glance:
git+https://opendev.org/openstack/tempest.git#egg=tempest

View File

@ -38,22 +38,22 @@ applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
placement-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
glance-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
nova-cloud-controller-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
neutron-api-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
mysql-innodb-cluster:
charm: ch:mysql-innodb-cluster
@ -64,14 +64,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
memcached:
charm: ch:memcached
@ -92,7 +92,7 @@ applications:
- '5'
- '6'
- '7'
channel: latest/edge
channel: reef/edge
ceph-mon:
charm: ch:ceph-mon
@ -103,7 +103,7 @@ applications:
- '8'
- '9'
- '10'
channel: latest/edge
channel: reef/edge
keystone:
charm: ch:keystone
@ -112,7 +112,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '11'
channel: latest/edge
channel: 2023.2/edge
glance:
charm: ch:glance
@ -121,7 +121,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '12'
channel: latest/edge
channel: 2023.2/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
@ -131,7 +131,7 @@ applications:
network-manager: Neutron
to:
- '13'
channel: latest/edge
channel: 2023.2/edge
nova-compute:
charm: ch:nova-compute
@ -140,7 +140,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '14'
channel: latest/edge
channel: 2023.2/edge
neutron-api:
charm: ch:neutron-api
@ -152,7 +152,7 @@ applications:
neutron-security-groups: true
to:
- '15'
channel: latest/edge
channel: 2023.2/edge
neutron-gateway:
charm: ch:neutron-gateway
@ -162,11 +162,11 @@ applications:
bridge-mappings: physnet1:br-ex
to:
- '16'
channel: latest/edge
channel: 2023.2/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: latest/edge
channel: 2023.2/edge
ceilometer:
charm: ch:ceilometer
@ -178,7 +178,7 @@ applications:
polling-batch-size: 0
to:
- '17'
channel: latest/edge
channel: 2023.2/edge
gnocchi:
charm: ch:gnocchi
@ -187,7 +187,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '18'
channel: latest/edge
channel: 2023.2/edge
placement:
charm: ch:placement
@ -197,7 +197,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '19'
channel: latest/edge
channel: 2023.2/edge
ceilometer-agent:
charm: ../../ceilometer-agent.charm

View File

@ -38,22 +38,22 @@ applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
placement-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
glance-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
nova-cloud-controller-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
neutron-api-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
mysql-innodb-cluster:
charm: ch:mysql-innodb-cluster
@ -64,14 +64,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
memcached:
charm: ch:memcached
@ -92,7 +92,7 @@ applications:
- '5'
- '6'
- '7'
channel: latest/edge
channel: reef/edge
ceph-mon:
charm: ch:ceph-mon
@ -103,7 +103,7 @@ applications:
- '8'
- '9'
- '10'
channel: latest/edge
channel: reef/edge
keystone:
charm: ch:keystone
@ -112,7 +112,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '11'
channel: latest/edge
channel: 2023.2/edge
glance:
charm: ch:glance
@ -121,7 +121,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '12'
channel: latest/edge
channel: 2023.2/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
@ -131,7 +131,7 @@ applications:
network-manager: Neutron
to:
- '13'
channel: latest/edge
channel: 2023.2/edge
nova-compute:
charm: ch:nova-compute
@ -140,7 +140,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '14'
channel: latest/edge
channel: 2023.2/edge
neutron-api:
charm: ch:neutron-api
@ -152,7 +152,7 @@ applications:
neutron-security-groups: true
to:
- '15'
channel: latest/edge
channel: 2023.2/edge
neutron-gateway:
charm: ch:neutron-gateway
@ -162,11 +162,11 @@ applications:
bridge-mappings: physnet1:br-ex
to:
- '16'
channel: latest/edge
channel: 2023.2/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: latest/edge
channel: 2023.2/edge
ceilometer:
charm: ch:ceilometer
@ -178,7 +178,7 @@ applications:
polling-batch-size: 0
to:
- '17'
channel: latest/edge
channel: 2023.2/edge
gnocchi:
charm: ch:gnocchi
@ -187,7 +187,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '18'
channel: latest/edge
channel: 2023.2/edge
placement:
charm: ch:placement
@ -197,7 +197,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '19'
channel: latest/edge
channel: 2023.2/edge
ceilometer-agent:
charm: ../../ceilometer-agent.charm

View File

@ -1,324 +0,0 @@
variables:
openstack-origin: &openstack-origin distro
series: lunar
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':
# Note that holding memcached at focal as it's not available at lunar yet.
series: focal
'5':
'6':
'7':
'8':
'9':
'10':
'11':
'12':
'13':
constraints: mem=4096M
'14':
constraints: mem=4096M cores=4
'15':
'16':
'17':
'18':
'19':
applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
placement-mysql-router:
charm: ch:mysql-router
channel: latest/edge
glance-mysql-router:
charm: ch:mysql-router
channel: latest/edge
nova-cloud-controller-mysql-router:
charm: ch:mysql-router
channel: latest/edge
gnocchi-mysql-router:
charm: ch:mysql-router
channel: latest/edge
neutron-api-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
to:
- '3'
channel: latest/edge
memcached:
charm: ch:memcached
num_units: 1
# Note that holding memcached at focal as it's not available at lunar yet.
series: focal
to:
- '4'
ceph-osd:
charm: ch:ceph-osd
num_units: 3
options:
source: *openstack-origin
storage:
osd-devices: 'cinder,10G'
to:
- '5'
- '6'
- '7'
channel: latest/edge
ceph-mon:
charm: ch:ceph-mon
num_units: 3
options:
source: *openstack-origin
to:
- '8'
- '9'
- '10'
channel: latest/edge
keystone:
charm: ch:keystone
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '11'
channel: latest/edge
glance:
charm: ch:glance
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '12'
channel: latest/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
num_units: 1
options:
openstack-origin: *openstack-origin
network-manager: Neutron
to:
- '13'
channel: latest/edge
nova-compute:
charm: ch:nova-compute
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '14'
channel: latest/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:
- '15'
channel: latest/edge
neutron-gateway:
charm: ch:neutron-gateway
num_units: 1
options:
openstack-origin: *openstack-origin
bridge-mappings: physnet1:br-ex
to:
- '16'
channel: latest/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: latest/edge
ceilometer:
charm: ch:ceilometer
num_units: 1
options:
openstack-origin: *openstack-origin
debug: true
polling-interval: 10
polling-batch-size: 0
to:
- '17'
channel: latest/edge
gnocchi:
charm: ch:gnocchi
num_units: 1
options:
openstack-origin: *openstack-origin
to:
- '18'
channel: latest/edge
placement:
charm: ch:placement
num_units: 1
constraints: mem=1G
options:
openstack-origin: *openstack-origin
to:
- '19'
channel: latest/edge
ceilometer-agent:
charm: ../../ceilometer-agent.charm
options:
polling-interval: 10
# NOTE(lourot): we normally set this to `true` in other bundles in order
# to validate more metrics but this is broken on Wallaby. See lp:1938884
enable-all-pollsters: false
relations:
- - 'ceilometer:amqp'
- 'rabbitmq-server:amqp'
- - 'ceilometer:identity-notifications'
- 'keystone:identity-notifications'
- - 'ceilometer:ceilometer-service'
- 'ceilometer-agent:ceilometer-service'
- - 'ceilometer:metric-service'
- 'gnocchi:metric-service'
- - 'ceilometer:identity-credentials'
- 'keystone:identity-credentials'
- - 'keystone:shared-db'
- 'keystone-mysql-router:shared-db'
- - 'keystone-mysql-router:db-router'
- 'mysql-innodb-cluster:db-router'
- - 'ceilometer-agent:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-compute:nova-ceilometer'
- 'ceilometer-agent:nova-ceilometer'
- - 'nova-compute:amqp'
- 'rabbitmq-server:amqp'
- - 'placement:shared-db'
- 'placement-mysql-router:shared-db'
- - 'placement-mysql-router:db-router'
- 'mysql-innodb-cluster:db-router'
- - 'placement:identity-service'
- 'keystone:identity-service'
- - 'placement:placement'
- 'nova-cloud-controller:placement'
- - 'glance:identity-service'
- 'keystone:identity-service'
- - 'glance:shared-db'
- 'glance-mysql-router:shared-db'
- - 'glance-mysql-router:db-router'
- 'mysql-innodb-cluster:db-router'
- - 'glance:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-compute:image-service'
- 'glance:image-service'
- - 'nova-cloud-controller:shared-db'
- 'nova-cloud-controller-mysql-router:shared-db'
- - 'nova-cloud-controller-mysql-router:db-router'
- 'mysql-innodb-cluster:db-router'
- - 'nova-cloud-controller:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:identity-service'
- 'keystone:identity-service'
- - 'nova-cloud-controller:cloud-compute'
- 'nova-compute:cloud-compute'
- - 'nova-cloud-controller:image-service'
- 'glance:image-service'
- - 'ceph-mon:osd'
- 'ceph-osd:mon'
- - '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'
- - 'gnocchi:identity-service'
- 'keystone:identity-service'
- - 'neutron-gateway:amqp'
- 'rabbitmq-server:amqp'
- - 'nova-cloud-controller:quantum-network-service'
- 'neutron-gateway:quantum-network-service'
- - 'neutron-api:shared-db'
- 'neutron-api-mysql-router:shared-db'
- - 'neutron-api-mysql-router:db-router'
- 'mysql-innodb-cluster:db-router'
- - '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'

View File

@ -38,22 +38,22 @@ applications:
keystone-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
placement-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
glance-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
nova-cloud-controller-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
neutron-api-mysql-router:
charm: ch:mysql-router
channel: latest/edge
channel: 8.0/edge
mysql-innodb-cluster:
charm: ch:mysql-innodb-cluster
@ -64,14 +64,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
memcached:
charm: ch:memcached
@ -92,7 +92,7 @@ applications:
- '5'
- '6'
- '7'
channel: latest/edge
channel: reef/edge
ceph-mon:
charm: ch:ceph-mon
@ -103,7 +103,7 @@ applications:
- '8'
- '9'
- '10'
channel: latest/edge
channel: reef/edge
keystone:
charm: ch:keystone
@ -112,7 +112,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '11'
channel: latest/edge
channel: 2023.2/edge
glance:
charm: ch:glance
@ -121,7 +121,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '12'
channel: latest/edge
channel: 2023.2/edge
nova-cloud-controller:
charm: ch:nova-cloud-controller
@ -131,7 +131,7 @@ applications:
network-manager: Neutron
to:
- '13'
channel: latest/edge
channel: 2023.2/edge
nova-compute:
charm: ch:nova-compute
@ -140,7 +140,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '14'
channel: latest/edge
channel: 2023.2/edge
neutron-api:
charm: ch:neutron-api
@ -152,7 +152,7 @@ applications:
neutron-security-groups: true
to:
- '15'
channel: latest/edge
channel: 2023.2/edge
neutron-gateway:
charm: ch:neutron-gateway
@ -162,11 +162,11 @@ applications:
bridge-mappings: physnet1:br-ex
to:
- '16'
channel: latest/edge
channel: 2023.2/edge
neutron-openvswitch:
charm: ch:neutron-openvswitch
channel: latest/edge
channel: 2023.2/edge
ceilometer:
charm: ch:ceilometer
@ -178,7 +178,7 @@ applications:
polling-batch-size: 0
to:
- '17'
channel: latest/edge
channel: 2023.2/edge
gnocchi:
charm: ch:gnocchi
@ -187,7 +187,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '18'
channel: latest/edge
channel: 2023.2/edge
placement:
charm: ch:placement
@ -197,7 +197,7 @@ applications:
openstack-origin: *openstack-origin
to:
- '19'
channel: latest/edge
channel: 2023.2/edge
ceilometer-agent:
charm: ../../ceilometer-agent.charm

View File

@ -13,7 +13,6 @@ gate_bundles:
dev_bundles:
- jammy-bobcat
- lunar-antelope
- mantic-bobcat
smoke_bundles:
@ -30,5 +29,4 @@ target_deploy_status:
tests_options:
force_deploy:
- lunar-antelope
- mantic-bobcat

25
tox.ini
View File

@ -32,11 +32,11 @@ passenv =
CS_*
OS_*
TEST_*
deps = -r{toxinidir}/test-requirements.txt
deps = -r{toxinidir}/test-requirements-py38.txt
[testenv:build]
basepython = python3
deps = -r{toxinidir}/build-requirements.txt
deps =
# charmcraft clean is done to ensure that
# `tox -e build` always performs a clean, repeatable build.
# For faster rebuilds during development,
@ -47,15 +47,17 @@ commands =
{toxinidir}/rename.sh
charmcraft clean
[testenv:py38]
basepython = python3.8
deps = -r{toxinidir}/merged-requirements-py38.txt
[testenv:py310]
basepython = python3.10
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
deps = -r{toxinidir}/merged-requirements-py310.txt
[testenv:py3]
basepython = python3
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
deps = -r{toxinidir}/merged-requirements-py310.txt
[testenv:pep8]
basepython = python3
@ -68,8 +70,7 @@ commands = flake8 {posargs} hooks unit_tests tests actions lib files
# 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
@ -102,22 +103,22 @@ 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-dev]
basepython = python3
basepython = python3.8
commands =
functest-run-suite --keep-model --dev
[testenv:func-target]
basepython = python3
basepython = python3.8
commands =
functest-run-suite --keep-model --bundle {posargs}