Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-manilaclient for
openSUSE:Factory checked in at 2026-06-15 19:44:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-manilaclient (Old)
and /work/SRC/openSUSE:Factory/.python-manilaclient.new.1981 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-manilaclient"
Mon Jun 15 19:44:44 2026 rev:29 rq:1359329 version:6.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-manilaclient/python-manilaclient.changes
2026-06-01 18:07:44.475600048 +0200
+++
/work/SRC/openSUSE:Factory/.python-manilaclient.new.1981/python-manilaclient.changes
2026-06-15 19:48:10.803328673 +0200
@@ -1,0 +2,16 @@
+Sun Jun 14 21:27:49 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 6.1.0:
+ * Replace OVN Metadata agent with OVN agent
+ * Follow up on share replica metadata changes
+ * fix stale API examble and typo in user/api.rst
+ * update stale OpenStack references in README.rst
+ * fix formatting errors in pyproject.toml
+ * doc: fix share network docstrings
+ * doc: Fix wrong class references in manager docstrings
+ * doc: Update OS_TENANT_NAME to OS_PROJECT_NAME
+ * Fix typo 'occured' should be 'occurred'
+ * Fix option to override API endpoint
+ * Update master for stable/2026.1
+
+-------------------------------------------------------------------
Old:
----
python_manilaclient-6.0.0.tar.gz
New:
----
python_manilaclient-6.1.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-manilaclient.spec ++++++
--- /var/tmp/diff_new_pack.vsEJTQ/_old 2026-06-15 19:48:11.843372376 +0200
+++ /var/tmp/diff_new_pack.vsEJTQ/_new 2026-06-15 19:48:11.843372376 +0200
@@ -18,7 +18,7 @@
%global pythons %{primary_python}
Name: python-manilaclient
-Version: 6.0.0
+Version: 6.1.0
Release: 0
Summary: Client Library for OpenStack Share API
License: Apache-2.0
++++++ python_manilaclient-6.0.0.tar.gz -> python_manilaclient-6.1.0.tar.gz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python_manilaclient-6.0.0/AUTHORS
new/python_manilaclient-6.1.0/AUTHORS
--- old/python_manilaclient-6.0.0/AUTHORS 2026-02-27 14:15:36.000000000
+0100
+++ new/python_manilaclient-6.1.0/AUTHORS 2026-05-19 11:28:16.000000000
+0200
@@ -37,6 +37,7 @@
David Sariel <[email protected]>
Deepak C Shetty <[email protected]>
Denis Cavalcante <[email protected]>
+Denver Baraka <[email protected]>
Dina Saparbaeva <[email protected]>
Dirk Mueller <[email protected]>
Dirk Müller <[email protected]>
@@ -85,6 +86,7 @@
Marc Koderer <[email protected]>
Matt Riedemann <[email protected]>
Maurice Escher <[email protected]>
+Medha Chaturvedi <[email protected]>
Nahim Alves de Souza <[email protected]>
Namrata Sitlani <[email protected]>
Nguyen Hai <[email protected]>
@@ -100,6 +102,7 @@
Rodrigo Barbieri <[email protected]>
Rodrigo Barbieri <[email protected]>
Saikumar Pulluri <[email protected]>
+Sally Karimi <[email protected]>
Sascha Peilicke <[email protected]>
Sean McGinnis <[email protected]>
Shane Wang <[email protected]>
@@ -175,6 +178,7 @@
luke.li <[email protected]>
maaoyu <[email protected]>
mark.sturdevant <[email protected]>
+medhac1403 <[email protected]>
melakualehegn <[email protected]>
melissaml <[email protected]>
morozovalekseywot <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python_manilaclient-6.0.0/ChangeLog
new/python_manilaclient-6.1.0/ChangeLog
--- old/python_manilaclient-6.0.0/ChangeLog 2026-02-27 14:15:36.000000000
+0100
+++ new/python_manilaclient-6.1.0/ChangeLog 2026-05-19 11:28:16.000000000
+0200
@@ -1,6 +1,21 @@
CHANGES
=======
+6.1.0
+-----
+
+* Replace OVN Metadata agent with OVN agent
+* Follow up on share replica metadata changes
+* fix stale API examble and typo in user/api.rst
+* update stale OpenStack references in README.rst
+* fix formatting errors in pyproject.toml
+* doc: fix share network docstrings
+* doc: Fix wrong class references in manager docstrings
+* doc: Update OS\_TENANT\_NAME to OS\_PROJECT\_NAME
+* Fix typo 'occured' should be 'occurred'
+* Fix option to override API endpoint
+* Update master for stable/2026.1
+
6.0.0
-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python_manilaclient-6.0.0/PKG-INFO
new/python_manilaclient-6.1.0/PKG-INFO
--- old/python_manilaclient-6.0.0/PKG-INFO 2026-02-27 14:15:36.272032500
+0100
+++ new/python_manilaclient-6.1.0/PKG-INFO 2026-05-19 11:28:16.339723600
+0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: python-manilaclient
-Version: 6.0.0
+Version: 6.1.0
Summary: Client library for OpenStack Shared File System Storage
Author-email: OpenStack <[email protected]>
License: Apache-2.0
@@ -87,20 +87,20 @@
----------------
Installing this package gets you a shell command, ``manila``, that you
-can use to interact with any Rackspace compatible API (including OpenStack).
+can use to interact with the OpenStack Manila API.
You'll need to provide your OpenStack username and password. You can do this
-with the ``--os-username``, ``--os-password`` and ``--os-tenant-name``
+with the ``--os-username``, ``--os-password`` and ``--os-project-name``
params, but it's easier to just set them as environment variables::
export OS_USERNAME=foouser
export OS_PASSWORD=barpass
- export OS_TENANT_NAME=fooproject
+ export OS_PROJECT_NAME=fooproject
You will also need to define the authentication url either with param
``--os-auth-url`` or as an environment variable::
- export OS_AUTH_URL=http://example.com:5000/v2.0/
+ export OS_AUTH_URL=http://example.com:5000/v3/
Since Keystone can return multiple regions in the Service Catalog, you
can specify the one you want with ``--os-region-name`` (or
@@ -116,9 +116,9 @@
Quick-start using keystone::
- # use v2.0 auth with http://example.com:5000/v2.0/
- >>> from manilaclient.v1 import client
- >>> nt = client.Client(USER, PASS, TENANT, AUTH_URL, service_type="share")
+ # use v3 auth with http://example.com:5000/v3/
+ >>> from manilaclient.v2 import client
+ >>> nt = client.Client("2", USER, PASS, PROJECT, AUTH_URL,
service_type="share")
>>> nt.shares.list()
[...]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python_manilaclient-6.0.0/README.rst
new/python_manilaclient-6.1.0/README.rst
--- old/python_manilaclient-6.0.0/README.rst 2026-02-27 14:15:10.000000000
+0100
+++ new/python_manilaclient-6.1.0/README.rst 2026-05-19 11:27:25.000000000
+0200
@@ -52,20 +52,20 @@
----------------
Installing this package gets you a shell command, ``manila``, that you
-can use to interact with any Rackspace compatible API (including OpenStack).
+can use to interact with the OpenStack Manila API.
You'll need to provide your OpenStack username and password. You can do this
-with the ``--os-username``, ``--os-password`` and ``--os-tenant-name``
+with the ``--os-username``, ``--os-password`` and ``--os-project-name``
params, but it's easier to just set them as environment variables::
export OS_USERNAME=foouser
export OS_PASSWORD=barpass
- export OS_TENANT_NAME=fooproject
+ export OS_PROJECT_NAME=fooproject
You will also need to define the authentication url either with param
``--os-auth-url`` or as an environment variable::
- export OS_AUTH_URL=http://example.com:5000/v2.0/
+ export OS_AUTH_URL=http://example.com:5000/v3/
Since Keystone can return multiple regions in the Service Catalog, you
can specify the one you want with ``--os-region-name`` (or
@@ -81,9 +81,9 @@
Quick-start using keystone::
- # use v2.0 auth with http://example.com:5000/v2.0/
- >>> from manilaclient.v1 import client
- >>> nt = client.Client(USER, PASS, TENANT, AUTH_URL, service_type="share")
+ # use v3 auth with http://example.com:5000/v3/
+ >>> from manilaclient.v2 import client
+ >>> nt = client.Client("2", USER, PASS, PROJECT, AUTH_URL,
service_type="share")
>>> nt.shares.list()
[...]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/doc/source/cli/osc_plugin_cli.rst
new/python_manilaclient-6.1.0/doc/source/cli/osc_plugin_cli.rst
--- old/python_manilaclient-6.0.0/doc/source/cli/osc_plugin_cli.rst
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/doc/source/cli/osc_plugin_cli.rst
2026-05-19 11:27:25.000000000 +0200
@@ -27,7 +27,7 @@
export OS_USERNAME=foo
export OS_PASSWORD=bar
- export OS_TENANT_NAME=foobarproject
+ export OS_PROJECT_NAME=foobarproject
export OS_AUTH_URL=http://...
export OS_SHARE_API_VERSION=2.51
@@ -36,7 +36,7 @@
``--os-endpoint-override`` or set the corresponding environment
variable::
- export OS_ENDPOINT_OVERRIDE=http://...
+ export OS_SHARED_FILE_SYSTEM_ENDPOINT_OVERRIDE=http://...
Getting help
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python_manilaclient-6.0.0/doc/source/user/api.rst
new/python_manilaclient-6.1.0/doc/source/user/api.rst
--- old/python_manilaclient-6.0.0/doc/source/user/api.rst 2026-02-27
14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/doc/source/user/api.rst 2026-05-19
11:27:25.000000000 +0200
@@ -14,7 +14,7 @@
done so, you can use the API like so::
>>> from manilaclient import client
- >>> manila = client.Client('1', $OS_USER_NAME, $OS_PASSWORD,
$OS_TENANT_NAME, $OS_AUTH_URL)
+ >>> manila = client.Client('2', $OS_USER_NAME, $OS_PASSWORD,
$OS_PROJECT_NAME, $OS_AUTH_URL)
>>> manila.shares.list()
[]
>>> share = manila.shares.create(share_proto="nfs", size=1,
share_network_id="some_share_network_id")
@@ -26,7 +26,7 @@
In addition to creating and deleting shares, the manilaclient can manage
share-types, access controls, and more! Using CephFS with Ganesha for NFS
-support as an example (assuumes this continues from the above initialization)::
+support as an example (assumes this continues from the above initialization)::
>>> share_type = client.share_types.create(
>>> name="cephfsnfstype", spec_driver_handles_share_servers=False,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python_manilaclient-6.0.0/manilaclient/exceptions.py
new/python_manilaclient-6.1.0/manilaclient/exceptions.py
--- old/python_manilaclient-6.0.0/manilaclient/exceptions.py 2026-02-27
14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/exceptions.py 2026-05-19
11:27:25.000000000 +0200
@@ -24,7 +24,7 @@
class ManilaclientException(Exception):
"""A generic client error."""
- message = _("An unexpected error occured.")
+ message = _("An unexpected error occurred.")
def __init__(self, message):
self.message = message or self.message
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python_manilaclient-6.0.0/manilaclient/osc/plugin.py
new/python_manilaclient-6.1.0/manilaclient/osc/plugin.py
--- old/python_manilaclient-6.0.0/manilaclient/osc/plugin.py 2026-02-27
14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/osc/plugin.py 2026-05-19
11:27:25.000000000 +0200
@@ -64,9 +64,17 @@
"""Returns a shared file system service client."""
requested_api_version = instance._api_version[API_NAME]
- service_type, manila_endpoint_url = _get_manila_url_from_service_catalog(
- instance
+ endpoint_override = getattr(
+ instance._cli_options, 'os_endpoint_override', None
)
+ if endpoint_override:
+ manila_endpoint_url = endpoint_override
+ service_type = constants.SFS_SERVICE_TYPE
+ else:
+ service_type, manila_endpoint_url = (
+ _get_manila_url_from_service_catalog(instance)
+ )
+
instance.setup_auth()
debugging_enabled = instance._cli_options.debug
@@ -128,13 +136,14 @@
"--os-endpoint-override",
metavar="<endpoint-override>",
default=utils.env(
+ "OS_SHARED_FILE_SYSTEM_ENDPOINT_OVERRIDE",
"OS_ENDPOINT_OVERRIDE",
"OS_MANILA_BYPASS_URL",
"MANILACLIENT_BYPASS_URL",
),
help=(
"Use this API endpoint instead of the Service Catalog. "
- "Defaults to env[OS_ENDPOINT_OVERRIDE]."
+ "Defaults to env[OS_SHARED_FILE_SYSTEM_ENDPOINT_OVERRIDE]."
),
)
return parser
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/osc/v2/share_replicas.py
new/python_manilaclient-6.1.0/manilaclient/osc/v2/share_replicas.py
--- old/python_manilaclient-6.0.0/manilaclient/osc/v2/share_replicas.py
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/osc/v2/share_replicas.py
2026-05-19 11:27:26.000000000 +0200
@@ -498,7 +498,7 @@
parser.add_argument(
"replica",
metavar="<replica>",
- help=_("Unset a property for"),
+ help=_("ID of the share replica to unset property from"),
)
parser.add_argument(
'--property',
@@ -526,14 +526,23 @@
"with API microversion '2.95'."
)
)
+ result = 0
for key in parsed_args.property:
try:
replica.delete_metadata([key])
except Exception as e:
- msg = _(
- "Failed to unset replica property '%(key)s': %(e)s"
+ result += 1
+ LOG.error(
+ _(
+ "Failed to unset replica property "
+ "'%(key)s': %(exception)s"
+ ),
+ {'key': key, 'exception': e},
)
- raise exceptions.CommandError(msg % {'key': key, 'e': e})
+ if result > 0:
+ raise exceptions.CommandError(
+ _("One or more of the unset operations failed")
+ )
else:
raise exceptions.CommandError(
"Please specify '--property <key>' to unset a property."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/tests/functional/osc/base.py
new/python_manilaclient-6.1.0/manilaclient/tests/functional/osc/base.py
--- old/python_manilaclient-6.0.0/manilaclient/tests/functional/osc/base.py
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/tests/functional/osc/base.py
2026-05-19 11:27:26.000000000 +0200
@@ -417,6 +417,7 @@
availability_zone=None,
share_network=None,
wait=None,
+ properties=None,
add_cleanup=True,
):
cmd = f'replica create {share}'
@@ -427,6 +428,9 @@
cmd = cmd + ' --wait'
if share_network:
cmd = cmd + f' --share-network {share_network}'
+ if properties:
+ for key, value in properties.items():
+ cmd = cmd + f' --property {key}={value}'
replica_object = self.dict_result('share', cmd)
self._wait_for_object_status(
@@ -435,11 +439,22 @@
if add_cleanup:
self.addCleanup(
- self.openstack,
- f'share replica delete {replica_object["id"]} --wait',
+ self._delete_share_replica_and_wait, replica_object['id']
)
return replica_object
+ def _delete_share_replica_and_wait(self, replica_id):
+ """Delete a share replica and wait for it to be gone.
+
+ Uses check_object_deleted (respects CONF.build_timeout) instead of
+ the CLI --wait flag which is limited to osc_lib's hardcoded 300s.
+ """
+ self.openstack(
+ f'share replica delete {replica_id}',
+ fail_ok=True,
+ )
+ self.check_object_deleted('share replica', replica_id)
+
def get_share_replica_export_locations(self, replica):
cmd = f'replica export location list {replica}'
export_locations = self.listing_result('share', cmd)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/tests/functional/osc/test_share_replicas.py
new/python_manilaclient-6.1.0/manilaclient/tests/functional/osc/test_share_replicas.py
---
old/python_manilaclient-6.0.0/manilaclient/tests/functional/osc/test_share_replicas.py
2026-02-27 14:15:10.000000000 +0100
+++
new/python_manilaclient-6.1.0/manilaclient/tests/functional/osc/test_share_replicas.py
2026-05-19 11:27:26.000000000 +0200
@@ -18,7 +18,7 @@
class ShareReplicasCLITest(base.OSCClientTestBase):
- def _create_share_and_replica(self, add_cleanup=True):
+ def _create_share_and_replica(self, add_cleanup=True, properties=None):
replication_type = CONF.replication_type
share_type = self.create_share_type(
data_utils.rand_name('test_share_type'),
@@ -33,6 +33,7 @@
share['id'],
share_network=share_network['id'],
wait=True,
+ properties=properties,
add_cleanup=add_cleanup,
)
return replica
@@ -56,3 +57,71 @@
share_replica = self._create_share_and_replica(add_cleanup=False)
self.openstack(f'share replica delete {share_replica["id"]}')
self.check_object_deleted('share replica', share_replica["id"])
+
+ def test_share_replica_create_with_metadata(self):
+ """Create a replica with --property and verify it appears in show."""
+ share_replica = self._create_share_and_replica(
+ properties={'test_key': 'test_value'}
+ )
+ show_result = self.dict_result(
+ 'share', f'replica show {share_replica["id"]}'
+ )
+ self.assertEqual(share_replica['id'], show_result['id'])
+ self.assertIn('test_key', show_result['properties'])
+ self.assertIn('test_value', show_result['properties'])
+
+ def test_share_replica_set_property(self):
+ """Set a property on a replica and verify it appears in show."""
+ share_replica = self._create_share_and_replica()
+
+ self.openstack(
+ f'share replica set {share_replica["id"]}'
+ ' --property custom_role=secondary'
+ )
+
+ show_result = self.dict_result(
+ 'share', f'replica show {share_replica["id"]}'
+ )
+ self.assertEqual(share_replica['id'], show_result['id'])
+ self.assertIn('custom_role', show_result['properties'])
+ self.assertIn('secondary', show_result['properties'])
+
+ def test_share_replica_unset_property(self):
+ """Unset a property from a replica and verify it is removed."""
+ share_replica = self._create_share_and_replica(
+ properties={
+ 'custom_role': 'secondary',
+ 'custom_policy': 'async',
+ }
+ )
+
+ self.openstack(
+ f'share replica unset {share_replica["id"]} --property custom_role'
+ )
+
+ show_result = self.dict_result(
+ 'share', f'replica show {share_replica["id"]}'
+ )
+ self.assertEqual(share_replica['id'], show_result['id'])
+ self.assertNotIn('custom_role', show_result['properties'])
+ self.assertIn('custom_policy', show_result['properties'])
+ self.assertIn('async', show_result['properties'])
+
+ def test_share_replica_list_with_property_filter(self):
+ """List replicas filtered by property and verify correct results."""
+ share_replica = self._create_share_and_replica(
+ properties={'filter_key': 'filter_value'}
+ )
+ share_id = self.dict_result(
+ 'share', f'replica show {share_replica["id"]}'
+ )['share_id']
+
+ # List filtered by property; the replica should appear
+ filtered_list = self.listing_result(
+ 'share',
+ f'replica list --share {share_id}'
+ ' --property filter_key=filter_value',
+ )
+ filtered_ids = [item['ID'] for item in filtered_list]
+
+ self.assertIn(share_replica['id'], filtered_ids)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/tests/unit/osc/v2/test_share_replicas.py
new/python_manilaclient-6.1.0/manilaclient/tests/unit/osc/v2/test_share_replicas.py
---
old/python_manilaclient-6.0.0/manilaclient/tests/unit/osc/v2/test_share_replicas.py
2026-02-27 14:15:10.000000000 +0100
+++
new/python_manilaclient-6.1.0/manilaclient/tests/unit/osc/v2/test_share_replicas.py
2026-05-19 11:27:26.000000000 +0200
@@ -689,27 +689,48 @@
parsed_args.property
)
- def test_share_replica_unset_property_exception(self):
+ def test_share_replica_unset_multiple_properties(self):
self.app.client_manager.share.api_version = api_versions.APIVersion(
'2.95'
)
arglist = [
- self.share_replica.id,
'--property',
- 'test_key',
+ 'key1',
+ '--property',
+ 'key2',
+ self.share_replica.id,
]
verifylist = [
+ ('property', ['key1', 'key2']),
('replica', self.share_replica.id),
- ('property', ['test_key']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
- self.share_replica.delete_metadata.assert_called_once_with(
- parsed_args.property
+ # Assert delete_metadata was called for each key
+ expected_calls = [mock.call(['key1']), mock.call(['key2'])]
+ self.share_replica.delete_metadata.assert_has_calls(
+ expected_calls, any_order=False
+ )
+ self.assertEqual(self.share_replica.delete_metadata.call_count, 2)
+
+ def test_share_replica_unset_property_exception(self):
+ self.app.client_manager.share.api_version = api_versions.APIVersion(
+ '2.95'
)
+ arglist = [
+ self.share_replica.id,
+ '--property',
+ 'test_key',
+ ]
+ verifylist = [
+ ('replica', self.share_replica.id),
+ ('property', ['test_key']),
+ ]
+
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
# 404 Not Found would be raised, if property 'test_key' doesn't exist.
self.share_replica.delete_metadata.side_effect = exceptions.NotFound
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/v2/availability_zones.py
new/python_manilaclient-6.1.0/manilaclient/v2/availability_zones.py
--- old/python_manilaclient-6.0.0/manilaclient/v2/availability_zones.py
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/v2/availability_zones.py
2026-05-19 11:27:26.000000000 +0200
@@ -27,7 +27,7 @@
class AvailabilityZoneManager(base.Manager):
- """Manage :class:`Service` resources."""
+ """Manage :class:`AvailabilityZone` resources."""
resource_class = AvailabilityZone
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/v2/share_instances.py
new/python_manilaclient-6.1.0/manilaclient/v2/share_instances.py
--- old/python_manilaclient-6.0.0/manilaclient/v2/share_instances.py
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/v2/share_instances.py
2026-05-19 11:27:26.000000000 +0200
@@ -35,7 +35,7 @@
class ShareInstanceManager(base.ManagerWithFind):
- """Manage :class:`ShareInstances` resources."""
+ """Manage :class:`ShareInstance` resources."""
resource_class = ShareInstance
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/v2/share_network_subnets.py
new/python_manilaclient-6.1.0/manilaclient/v2/share_network_subnets.py
--- old/python_manilaclient-6.0.0/manilaclient/v2/share_network_subnets.py
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/v2/share_network_subnets.py
2026-05-19 11:27:26.000000000 +0200
@@ -108,8 +108,8 @@
def get(self, share_network, share_network_subnet):
"""Get a share network subnet.
- :param policy: share network subnet to get.
- :rtype: :class:`NetworkSubnetInfo`
+ :param share_network_subnet: share network subnet to get.
+ :rtype: :class:`ShareNetworkSubnet`
"""
share_network_id = base.getid(share_network)
share_network_subnet_id = base.getid(share_network_subnet)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/v2/share_networks.py
new/python_manilaclient-6.1.0/manilaclient/v2/share_networks.py
--- old/python_manilaclient-6.0.0/manilaclient/v2/share_networks.py
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/v2/share_networks.py
2026-05-19 11:27:26.000000000 +0200
@@ -155,8 +155,8 @@
def get(self, share_network):
"""Get a share network.
- :param policy: share network to get.
- :rtype: :class:`NetworkInfo`
+ :param share_network: share network to get.
+ :rtype: :class:`ShareNetwork`
"""
return self._get(
RESOURCE_PATH % base.getid(share_network), RESOURCE_NAME
@@ -249,7 +249,7 @@
def list(self, detailed=True, search_opts=None):
"""Get a list of all share network.
- :rtype: list of :class:`NetworkInfo`
+ :rtype: list of :class:`ShareNetwork`
"""
query_string = self._build_query_string(search_opts)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/v2/share_replica_export_locations.py
new/python_manilaclient-6.1.0/manilaclient/v2/share_replica_export_locations.py
---
old/python_manilaclient-6.0.0/manilaclient/v2/share_replica_export_locations.py
2026-02-27 14:15:10.000000000 +0100
+++
new/python_manilaclient-6.1.0/manilaclient/v2/share_replica_export_locations.py
2026-05-19 11:27:26.000000000 +0200
@@ -28,7 +28,7 @@
class ShareReplicaExportLocationManager(base.ManagerWithFind):
- """Manage :class:`ShareInstanceExportLocation` resources."""
+ """Manage :class:`ShareReplicaExportLocation` resources."""
resource_class = ShareReplicaExportLocation
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/manilaclient/v2/share_replicas.py
new/python_manilaclient-6.1.0/manilaclient/v2/share_replicas.py
--- old/python_manilaclient-6.0.0/manilaclient/v2/share_replicas.py
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/manilaclient/v2/share_replicas.py
2026-05-19 11:27:26.000000000 +0200
@@ -85,12 +85,16 @@
:param share: either share object or its UUID.
:param search_opts: dict of search options (e.g., metadata filters)
+
:rtype: list of :class:`ShareReplica`
"""
search_opts = search_opts or {}
# This will turn {'metadata': {'foo': 'bar', 'baz': 'qux'}}
# into ?metadata=foo:bar,baz:qux
+ # For nested search options like metadata,
+ # stringified inner dict is expected.
+ # e.g., {'metadata': 'foo:bar,baz:qux'}
query_string = self._build_query_string(search_opts)
if share:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python_manilaclient-6.0.0/pyproject.toml
new/python_manilaclient-6.1.0/pyproject.toml
--- old/python_manilaclient-6.0.0/pyproject.toml 2026-02-27
14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/pyproject.toml 2026-05-19
11:27:26.000000000 +0200
@@ -39,7 +39,7 @@
[project.entry-points."openstack.share.v2"]
share_list = "manilaclient.osc.v2.share:ListShare"
share_create = "manilaclient.osc.v2.share:CreateShare"
-share_delete = " manilaclient.osc.v2.share:DeleteShare"
+share_delete = "manilaclient.osc.v2.share:DeleteShare"
share_show = "manilaclient.osc.v2.share:ShowShare"
share_set = "manilaclient.osc.v2.share:SetShare"
share_unset = "manilaclient.osc.v2.share:UnsetShare"
@@ -159,7 +159,7 @@
share_group_type_access_delete =
"manilaclient.osc.v2.share_group_type_access:ShareGroupTypeAccessDeny"
share_group_snapshot_create =
"manilaclient.osc.v2.share_group_snapshots:CreateShareGroupSnapshot"
share_group_snapshot_delete =
"manilaclient.osc.v2.share_group_snapshots:DeleteShareGroupSnapshot"
-share_group_snapshot_show=
"manilaclient.osc.v2.share_group_snapshots:ShowShareGroupSnapshot"
+share_group_snapshot_show =
"manilaclient.osc.v2.share_group_snapshots:ShowShareGroupSnapshot"
share_group_snapshot_list =
"manilaclient.osc.v2.share_group_snapshots:ListShareGroupSnapshot"
share_group_snapshot_set =
"manilaclient.osc.v2.share_group_snapshots:SetShareGroupSnapshot"
share_group_snapshot_unset =
"manilaclient.osc.v2.share_group_snapshots:UnsetShareGroupSnapshot"
@@ -182,7 +182,7 @@
share_lock_create = "manilaclient.osc.v2.resource_locks:CreateResourceLock"
share_lock_list = "manilaclient.osc.v2.resource_locks:ListResourceLock"
share_lock_show = "manilaclient.osc.v2.resource_locks:ShowResourceLock"
-share_lock_set = " manilaclient.osc.v2.resource_locks:SetResourceLock"
+share_lock_set = "manilaclient.osc.v2.resource_locks:SetResourceLock"
share_lock_unset = "manilaclient.osc.v2.resource_locks:UnsetResourceLock"
share_lock_delete = "manilaclient.osc.v2.resource_locks:DeleteResourceLock"
share_qos_type_create = "manilaclient.osc.v2.qos_types:CreateQosType"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/python_manilaclient.egg-info/PKG-INFO
new/python_manilaclient-6.1.0/python_manilaclient.egg-info/PKG-INFO
--- old/python_manilaclient-6.0.0/python_manilaclient.egg-info/PKG-INFO
2026-02-27 14:15:36.000000000 +0100
+++ new/python_manilaclient-6.1.0/python_manilaclient.egg-info/PKG-INFO
2026-05-19 11:28:16.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: python-manilaclient
-Version: 6.0.0
+Version: 6.1.0
Summary: Client library for OpenStack Shared File System Storage
Author-email: OpenStack <[email protected]>
License: Apache-2.0
@@ -87,20 +87,20 @@
----------------
Installing this package gets you a shell command, ``manila``, that you
-can use to interact with any Rackspace compatible API (including OpenStack).
+can use to interact with the OpenStack Manila API.
You'll need to provide your OpenStack username and password. You can do this
-with the ``--os-username``, ``--os-password`` and ``--os-tenant-name``
+with the ``--os-username``, ``--os-password`` and ``--os-project-name``
params, but it's easier to just set them as environment variables::
export OS_USERNAME=foouser
export OS_PASSWORD=barpass
- export OS_TENANT_NAME=fooproject
+ export OS_PROJECT_NAME=fooproject
You will also need to define the authentication url either with param
``--os-auth-url`` or as an environment variable::
- export OS_AUTH_URL=http://example.com:5000/v2.0/
+ export OS_AUTH_URL=http://example.com:5000/v3/
Since Keystone can return multiple regions in the Service Catalog, you
can specify the one you want with ``--os-region-name`` (or
@@ -116,9 +116,9 @@
Quick-start using keystone::
- # use v2.0 auth with http://example.com:5000/v2.0/
- >>> from manilaclient.v1 import client
- >>> nt = client.Client(USER, PASS, TENANT, AUTH_URL, service_type="share")
+ # use v3 auth with http://example.com:5000/v3/
+ >>> from manilaclient.v2 import client
+ >>> nt = client.Client("2", USER, PASS, PROJECT, AUTH_URL,
service_type="share")
>>> nt.shares.list()
[...]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/python_manilaclient.egg-info/SOURCES.txt
new/python_manilaclient-6.1.0/python_manilaclient.egg-info/SOURCES.txt
--- old/python_manilaclient-6.0.0/python_manilaclient.egg-info/SOURCES.txt
2026-02-27 14:15:36.000000000 +0100
+++ new/python_manilaclient-6.1.0/python_manilaclient.egg-info/SOURCES.txt
2026-05-19 11:28:16.000000000 +0200
@@ -272,6 +272,7 @@
releasenotes/notes/add-ensure-shares-command-6cd854408de1979b.yaml
releasenotes/notes/add-ensuring-filter-for-services-eedbead009d3505f.yaml
releasenotes/notes/add-export-location-filter-4cf3114doe40k598.yaml
+releasenotes/notes/add-export-variable-for-api-endpoint-override-c00ea54e1670cb90.yaml
releasenotes/notes/add-ipv6-access-type-4dko90r1a9a1e0b8.yaml
releasenotes/notes/add-like-filter-591572762357ef4b.yaml
releasenotes/notes/add-message-list-and-delete-41b3323edd63d894.yaml
@@ -418,6 +419,7 @@
releasenotes/source/2024.2.rst
releasenotes/source/2025.1.rst
releasenotes/source/2025.2.rst
+releasenotes/source/2026.1.rst
releasenotes/source/conf.py
releasenotes/source/index.rst
releasenotes/source/newton.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/python_manilaclient.egg-info/pbr.json
new/python_manilaclient-6.1.0/python_manilaclient.egg-info/pbr.json
--- old/python_manilaclient-6.0.0/python_manilaclient.egg-info/pbr.json
2026-02-27 14:15:36.000000000 +0100
+++ new/python_manilaclient-6.1.0/python_manilaclient.egg-info/pbr.json
2026-05-19 11:28:16.000000000 +0200
@@ -1 +1 @@
-{"git_version": "57679fa", "is_release": true}
\ No newline at end of file
+{"git_version": "2ceb369", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/releasenotes/notes/add-export-variable-for-api-endpoint-override-c00ea54e1670cb90.yaml
new/python_manilaclient-6.1.0/releasenotes/notes/add-export-variable-for-api-endpoint-override-c00ea54e1670cb90.yaml
---
old/python_manilaclient-6.0.0/releasenotes/notes/add-export-variable-for-api-endpoint-override-c00ea54e1670cb90.yaml
1970-01-01 01:00:00.000000000 +0100
+++
new/python_manilaclient-6.1.0/releasenotes/notes/add-export-variable-for-api-endpoint-override-c00ea54e1670cb90.yaml
2026-05-19 11:27:26.000000000 +0200
@@ -0,0 +1,7 @@
+---
+fixes:
+ - |
+ In addition to existing "--os-endpoint-override" option to override API
+ endpoint, user can also use export variable. For example, use
+ "export OS_SHARED_FILE_SYSTEM_ENDPOINT_OVERRIDE=<endpoint_url>" and then
+ use "openstack share list" command to refer different Manila API endpoint.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/releasenotes/notes/bug-2051394-fix-validate-neutron-info-ebe679675111eec9.yaml
new/python_manilaclient-6.1.0/releasenotes/notes/bug-2051394-fix-validate-neutron-info-ebe679675111eec9.yaml
---
old/python_manilaclient-6.0.0/releasenotes/notes/bug-2051394-fix-validate-neutron-info-ebe679675111eec9.yaml
2026-02-27 14:15:10.000000000 +0100
+++
new/python_manilaclient-6.1.0/releasenotes/notes/bug-2051394-fix-validate-neutron-info-ebe679675111eec9.yaml
2026-05-19 11:27:26.000000000 +0200
@@ -5,7 +5,7 @@
now validate Neutron network information provided
before sending the request.
- Previously, validation only occured in the Manila service
+ Previously, validation only occurred in the Manila service
which could result in client-side errors when invalid network
or subnet IDs were supplied. The client now performs
proper validation and handles missing or invalid
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/releasenotes/source/2026.1.rst
new/python_manilaclient-6.1.0/releasenotes/source/2026.1.rst
--- old/python_manilaclient-6.0.0/releasenotes/source/2026.1.rst
1970-01-01 01:00:00.000000000 +0100
+++ new/python_manilaclient-6.1.0/releasenotes/source/2026.1.rst
2026-05-19 11:27:26.000000000 +0200
@@ -0,0 +1,6 @@
+===========================
+2026.1 Series Release Notes
+===========================
+
+.. release-notes::
+ :branch: stable/2026.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/releasenotes/source/index.rst
new/python_manilaclient-6.1.0/releasenotes/source/index.rst
--- old/python_manilaclient-6.0.0/releasenotes/source/index.rst 2026-02-27
14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/releasenotes/source/index.rst 2026-05-19
11:27:26.000000000 +0200
@@ -7,6 +7,7 @@
:maxdepth: 1
unreleased
+ 2026.1
2025.2
2025.1
2024.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python_manilaclient-6.0.0/zuul.d/python-manilaclient-jobs.yaml
new/python_manilaclient-6.1.0/zuul.d/python-manilaclient-jobs.yaml
--- old/python_manilaclient-6.0.0/zuul.d/python-manilaclient-jobs.yaml
2026-02-27 14:15:10.000000000 +0100
+++ new/python_manilaclient-6.1.0/zuul.d/python-manilaclient-jobs.yaml
2026-05-19 11:27:26.000000000 +0200
@@ -80,7 +80,7 @@
ovsdb-server: true
# Neutron services
q-svc: true
- q-ovn-metadata-agent: true
+ q-ovn-agent: true
# openstack-cli-server causes problem with credential switch in ansible
# task
openstack-cli-server: false