From fd824768b5414733b7c78e185b5d1074c829aa96 Mon Sep 17 00:00:00 2001 From: Felipe Reyes Date: Wed, 23 Aug 2023 17:18:33 -0400 Subject: [PATCH] Add Watcher client support Add get_watcher_session_client() helper function to build a watcherclient.v1.Client instance authenticated with a keystone session that uses admin credentials by default. --- requirements.txt | 1 + setup.py | 1 + zaza/openstack/utilities/openstack.py | 10 ++++++++++ 3 files changed, 12 insertions(+) diff --git a/requirements.txt b/requirements.txt index 36df2ab..1a3b33c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -49,6 +49,7 @@ python-neutronclient python-novaclient python-octaviaclient python-swiftclient +python-watcherclient tenacity paramiko diff --git a/setup.py b/setup.py index e8a7c06..80e6078 100644 --- a/setup.py +++ b/setup.py @@ -65,6 +65,7 @@ install_require = [ 'python-ceilometerclient', 'python-cinderclient<6.0.0', 'python-swiftclient<3.9.0', + 'python-watcherclient', # 'zaza@git+https://github.com/openstack-charmers/zaza.git#egg=zaza', 'zaza', ] diff --git a/zaza/openstack/utilities/openstack.py b/zaza/openstack/utilities/openstack.py index d98e1a7..f531076 100644 --- a/zaza/openstack/utilities/openstack.py +++ b/zaza/openstack/utilities/openstack.py @@ -65,6 +65,7 @@ from keystoneauth1.identity import ( v3, v2, ) +from watcherclient import client as watcher_client import zaza.openstack.utilities.cert as cert import zaza.utilities.deployment_env as deployment_env import zaza.utilities.juju as juju_utils @@ -516,6 +517,15 @@ def get_manila_session_client(session, version='2'): return manilaclient.Client(session=session, client_version=version) +def get_watcher_session_client(session): + """Return Watcher client authenticated by keystone session. + + :param session: Keystone session object + :returns: Authenticated watcher client + """ + return watcher_client.get_client(session=session, api_version='1') + + def get_keystone_scope(model_name=None): """Return Keystone scope based on OpenStack release of the overcloud.