Commit graph

6355 commits

Author SHA1 Message Date
Stephen Finucane
a99ae364fc tests: Avoid unnecessary mocks
Change-Id: Ibb1bf5c29bf37d3f31889b091a055d0308e8cd85
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-08-14 12:03:16 +01:00
dna
e8a7db5858 tests: Simplify mocking in server tests
Replace assignments of `Mock` objects to methods that are already
mocked in the class functions within test_server.py

Change-Id: I446632301c1b9f94545a0b8314e54e761d5d296f
Signed-off-by: dna <la18byeol@gmail.com>
Story: 2011459
Task: 52211
2025-08-14 12:03:00 +01:00
Mridula Joshi
9f55b253a3 Adds CLI support for `glance md-namespace-objects-delete`
This patch adds operation which delete all metadef object inside a
namespace.
This can be implemented by `image metadef object delete`

Change-Id: Ib196e295aad1921d8bc0c451522e0ad530389134
Depends-on: https://review.opendev.org/c/openstack/openstacksdk/+/901671
Signed-off-by: Cyril Roelandt <cyril@redhat.com>
2025-08-07 20:25:50 +02:00
Alexey Stupnikov
e37148484c Remap custom named Image attributes when unsetting
Some Image attributes defined in openstacksdk are named differently
from actual properties managed by Glance. Because openstackclient
checked property names to be unset against Image object properties,
it was impossible to unset such properties.

This patch introduces a IMAGE_ATTRIBUTES_CUSTOM_NAMES dictionary
mapping real property names with custom attribute names.

Closes-bug: #2115732
Change-Id: I7296fc293dff9208464c9a07f58ce3e9ffabd3e9
Signed-off-by: Alexey Stupnikov <aleksey.stupnikov@gmail.com>
2025-07-29 18:24:57 +02:00
Alexey Stupnikov
46b25c7c0b network: Add '--project' to SG rule list command
Include '--project' and '--project-domain' filtering options to the
'security group rule list'.

Closes-Bug: #1648317
Change-Id: I19e423906846073cfa1e45b4a295b3a8f5d11970
Signed-off-by: Alexey Stupnikov <aleksey.stupnikov@gmail.com>
2025-07-24 18:06:03 +02:00
Stephen Finucane
c7d465a221 volume: Migrate 'volume show' to SDK
Change-Id: Ibd9d7a62c2500a1f31aa2d3d13ac7e8bad4e6964
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-07-18 11:38:26 +01:00
Stephen Finucane
5e5f12ba40 volume: Migrate 'volume migrate' to SDK
Change-Id: I99af5fce0c2c184e300dfbf5624b91eeed38c94b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-07-18 11:20:42 +01:00
Stephen Finucane
504cbd24e2 volume: Migrate 'volume create' to SDK
We need a shim for consistency group support, which we may eventually
port to SDK but have not yet. Otherwise, this is rather straightforward.

Change-Id: Ic880b7a64cde2148c266d549c4768c669ba3f501
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Depends-on: https://review.opendev.org/c/openstack/openstacksdk/+/943800
2025-07-17 16:41:46 +01:00
Doug Goldstein
51ecb5f984
volume: fix volume service set call
The command line operation could never work due to the incorrect call of
the openstacksdk API. This is updated to make it work and report errors
back to the user.

Closes-Bug: #2116969
Change-Id: I87cc410853c03b00dd1549d67cb1b9a8145bcfaa
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025-07-16 08:48:45 -05:00
Zuul
ffa37bab12 Merge "Add is_shared to security_groups" 2025-07-15 15:32:51 +00:00
elajkat
1b2dfeacf4 Add is_shared to security_groups
Change-Id: I1ff4aa9c6579699e6b479fdb429668de894cd012
Related-Bug: #1999774
Signed-off-by: elajkat <lajos.katona@est.tech>
2025-07-15 14:27:46 +01:00
Zuul
9d3a956a54 Merge "Add metadata as a filter condition when listing volumes" 2025-07-04 11:51:51 +00:00
ohjiwoo
572eeb6d38 Add metadata as a filter condition when listing volumes
When listing volumes, the API provides metadata as a query parameter, but this feature is not implemented in the client code. So add parameter.

story: 2011487
task: 52446
Change-Id: I4bf66d4e073c86296fa96ee29c2b33d771e18293
Signed-off-by: ohjiwoo <jiwooo.oh@samsung.com>
2025-07-04 09:28:40 +00:00
Takashi Kajinami
b6af7883b7 Replace deprecated assertItemsEqual
It has been provided by testtools to ease migration from python 2, but
was deprecated in 2.7.2[1] and will be removed in 2.8.0[2].

[1] https://github.com/testing-cabal/testtools/commit/e0d56b7ce65ae5b3d
[2] https://github.com/testing-cabal/testtools/commit/f01e86084e6a858d1

Change-Id: I8b68212a88553aff5c3b4182c246b3c0f7365cf6
2025-06-27 23:46:22 +09:00
Stephen Finucane
4ea3deda61 Remove duplicate Python version declarations
ruff can automatically detect this [1] now that it is defined in
pyproject.toml. mypy defaults to the version of Python used to run mypy
[2][3] so we need to keep its configuration around a while longer.

[1] https://docs.astral.sh/ruff/settings/#target-version
[2] https://mypy.readthedocs.io/en/stable/config_file.html#confval-python_version
[3] https://github.com/python/mypy/issues/19349

Change-Id: If5b3e6ff2483d73d5ff54cc28c1558cb9852b464
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-06-27 09:23:06 +01:00
Stephen Finucane
1b4fe6fac1 Migrate setup configuration to pyproject.toml
Change-Id: If7a6252ce751e875881654965762f6f514a15342
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-06-27 09:22:45 +01:00
Takashi Kajinami
ea85c7aa4d Replace deprecated datetime.utcfromtimestamp
It was deprecated in Python 3.12 in favor of datetime.fromtimestamp[1].

[1] https://docs.python.org/3/library/datetime.html#datetime.datetime.utcfromtimestamp

Change-Id: Ia805157eaecac0c61d4c5f88daa430ec6d69a9d4
2025-06-18 18:15:52 +09:00
psnew14
edb17881d0 Remove leading empty line from server create with --wait
The "openstack server create" with "--wait" args was priting an extra empty line character before the server ID.
This commit removes the extra empty line.

story: 2010947
task: 48984
Change-Id: Ib5ba1c9f23e7655ddfae0e5b644ed167ecd6485e
2025-06-01 22:50:55 +09:00
Zuul
f4c4a7343c Merge "Fix openstack image import --method web-download --uri 'invalid value'" 2025-05-30 17:15:43 +00:00
Zuul
d5e6392454 Merge "identity: Remove unnecessary helper" 2025-05-30 14:37:41 +00:00
djp
9ad18c4967
Fix openstack image import --method web-download --uri 'invalid value'
although python-openstackclient run command(image import) with invalid uri,
but the request succeeds. Fixed it to throw an exception
when requesting with an invalid URI.

unit test added. the test cover --uri 'invalid value'

Task: 52251
Story: 2011468
Closes-Bug: 2111777
Change-Id: I62cd8cdf054b6a5e07d664a543b0923ce5f20f83
2025-05-30 22:47:29 +09:00
Stephen Finucane
2e301857af docs: Add note about scoping on tokens
Change-Id: I4df74eaa1aa82fb8666bc1e6728b55a3e81bc76a
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-05-29 19:13:21 +01:00
Zuul
c923ed5893 Merge "Security-groups: Temporarily ignore is_shared" 2025-05-29 15:59:21 +00:00
elajkat
5f602475cd Security-groups: Temporarily ignore is_shared
[1] introduces is_shared field to SDK security-groups.
Till that is merged and released temporary skip the new field.

[1]: https://review.opendev.org/c/openstack/openstacksdk/+/950305
Related-Bug: #1999774

Change-Id: I71cdf96460bbb21ee61105ef9ccc23170b0b5460
2025-05-29 07:53:58 +00:00
Zuul
a8d2c56337 Merge "bug fix volume group show command." 2025-05-26 16:28:16 +00:00
Zuul
606fd132bc Merge "identity: Normalise output of application credentials commands" 2025-05-26 16:03:37 +00:00
Stephen Finucane
2f03c3ea3c identity: Remove unnecessary helper
Make better use of argparse and eliminate the need for a helper in the
process.

Change-Id: Ibdc9b4bfbb4d532ddb05bce9b49bcf0580cce76d
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-05-26 16:12:28 +01:00
hongp
1c70e264a4 bug fix volume group show command.
There is no "show" function in the "group" class of python-cinderclient. Instead, there is a "get" function, so I fixed it.
0125495f92/cinderclient/v3/groups.py (L134)

Closes-Bug: #2111539
Change-Id: If61d8cf115c9ff04d172d7344565e693774e7a21
2025-05-23 10:08:39 +09:00
Zuul
88b59d8975 Merge "evacuate: respect original SHUTOFF state in --wait completion" 2025-05-21 10:29:33 +00:00
waf
3909e93301 evacuate: respect original SHUTOFF state in --wait completion
When running `openstack server evacuate --wait`, the command would hang
indefinitely if the instance was originally in SHUTOFF state, because
only “ACTIVE” was treated as a successful completion. We now capture
the server’s status before evacuation and dynamically include
“SHUTOFF” in the `success_status` list if the instance was already
shut off. This ensures that a shutoff instance is accepted as a valid
completion without requiring manual intervention.

Unit tests have been added and updated to cover both:
- pre-evacuation ACTIVE → success_status=['active']
- pre-evacuation SHUTOFF → success_status=['active','shutoff']

Closes-Bug: #2103426
Change-Id: I86ad1cd173a144b16fde1dbac87819fab2d7a50a
2025-05-21 16:52:24 +09:00
Zuul
5a565ca1ce Merge "Fix missing 'options' field in 'user show' command" 2025-05-20 18:08:26 +00:00
Chaemin-Lim
9bcb1c5c00 Fix missing 'options' field in 'user show' command
This patch fixes a bug where the 'options' field was missing from
the output of the 'openstack user show' command since v7.0.0.

The issue was caused by the 'options' field not being included in
the column list in the _format_user function. This field is important
as it contains various user settings such as multi-factor authentication
configurations and password policy exemptions.

This patch:
1. Adds 'options' field to the column list in _format_user function
2. Updates all affected unit tests to include this field
3. Uses getattr() to safely handle cases where the options field may be absent

Without this fix, users cannot see important options like multi-factor
authentication settings through the CLI, which could lead to security
configuration issues being overlooked.

Closes-Bug: #2084946
Change-Id: I4319268ad4310e6164eb8e65664d73f9b32cdd78
2025-05-20 23:46:39 +09:00
0weng
a2be1b014e Identity: Migrate 'group' commands to SDK
Change-Id: I5a477426318d77021c0430efa1d1f9a7b1ee2633
2025-05-19 15:39:18 -07:00
Zuul
5fb4559a1f Merge "tests: Simplify mocking in image tests" 2025-05-19 16:25:49 +00:00
Zuul
50dd542519 Merge "network: Allow multiple FIP filter opts" 2025-05-19 16:05:20 +00:00
Zuul
de7762f9b8 Merge "volume: Migrate 'volume delete' to SDK" 2025-05-19 15:54:41 +00:00
Zuul
bea4d834ce Merge "volume: Temporarily ignore new volume columns" 2025-05-19 15:54:38 +00:00
Zuul
47a2596b39 Merge "volume: Split v2, v3 create, delete commands" 2025-05-19 15:54:36 +00:00
Zuul
07909a6a6c Merge "volume: Migrate 'snapshot show', 'snapshot list' to SDK" 2025-05-19 15:47:53 +00:00
Zuul
803c3c6d6a Merge "volume: Migrate 'snapshot set', 'snapshot unset' to SDK" 2025-05-19 15:47:50 +00:00
Zuul
110cd9faae Merge "volume: Migrate 'snapshot create' to SDK" 2025-05-19 15:45:04 +00:00
Zuul
2e0318629d Merge "volume: Migrate 'snapshot delete' to SDK" 2025-05-19 15:45:01 +00:00
Zuul
0e47fc4e45 Merge "volume: Add v3-specific volume snapshot module" 2025-05-19 15:37:26 +00:00
Zuul
5c9c4e3dd7 Merge "tests: Use SDK mocks for SDK-based commands" 2025-05-19 15:15:38 +00:00
Zuul
ff7497689c Merge "volume: Migrate 'backup set', 'backup unset' to SDK" 2025-05-19 15:15:35 +00:00
Zuul
d27ff5a650 Merge "volume: Migrate 'service *' to SDK" 2025-05-19 15:15:32 +00:00
Zuul
82170be8d6 Merge "volume: Add v3-specific volume service module" 2025-05-19 15:15:29 +00:00
Zuul
e3bd9a4c01 Merge "volume: Migrate 'block storage log level *' to SDK" 2025-05-19 15:14:29 +00:00
Zuul
d5238d1dab Merge "Add a column to all_projects tag of server list cmd" 2025-05-19 14:17:25 +00:00
Zuul
5f2145d102 Merge "Add filters to search for enabled/disabled users and projects" 2025-05-19 14:17:22 +00:00