Commit graph

4427 commits

Author SHA1 Message Date
Zuul
6e1a5ed5a6 Merge "trivial: Remove unnecessary trailing comma" 2024-09-11 21:16:45 +00:00
Zuul
9fca2b51ee Merge "pre-commit: Migrate from flake8 to ruff" 2024-09-11 21:16:44 +00:00
Zuul
73e9dd1934 Merge "quota: Allow 'quota set' to function without volume service" 2024-09-06 15:46:49 +00:00
Stephen Finucane
519fa7aabc pre-commit: Migrate from black to ruff format
Change-Id: I28ca7d31d30272002799f3e2832105dc67c60538
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-08-29 15:55:39 +01:00
Stephen Finucane
17e6545fd4 trivial: Remove unnecessary trailing comma
Change-Id: I62402145c17f96626ec6e29598e32dee03a6038e
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-08-29 15:55:39 +01:00
Stephen Finucane
2ba90581d5 pre-commit: Migrate from flake8 to ruff
Well, mostly. We still keep our own flake8 hooks and the hacking hooks
enabled. Everything else can be handled by ruff.

Doing this enables a couple of hacking checks that were previously
unaddressed. It also highlights a few cases that flake8 missed. Both are
addressed.

Change-Id: If81c7055e9ef692425da2789bae18a96d04b104f
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-08-29 15:55:13 +01:00
Zuul
9c5fd76d9e Merge "compute: Add 'uuid' column to aggregate list" 2024-08-27 17:21:35 +00:00
Zuul
50d1e0916b Merge "Add callback on plugin load failure" 2024-08-14 11:12:03 +00:00
Zuul
bc6cff777f Merge "compute: Make 'hypervisor show' a bit faster" 2024-08-12 16:45:25 +00:00
Zuul
6312a6f452 Merge "compute: Only pass admin_password on rebuild if set" 2024-08-12 16:44:11 +00:00
Zuul
0d570cd66a Merge "identity: Use previous naming for 'service show' fields" 2024-08-12 16:01:30 +00:00
Zuul
e97e59d22d Merge "identity: Use previous naming for 'application credential show' fields" 2024-08-12 15:49:39 +00:00
Zuul
d385bd1e03 Merge "Show Created At column for volume backups" 2024-08-09 12:20:45 +00:00
Stephen Finucane
25780e80ab identity: Use previous naming for 'service show' fields
We changed these in change I37d07a6c5cdc98680b8d65d596521cad2b049500 but
the '-c/--column' option provided by cliff currently requires an
explicit match on column names. Change them back for now. We can revert
this when cliff is a little bit smarter.

Change-Id: I9180922e9da5c22ae3d8878946d1bf1ec4b8c6e1
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Closes-bug: #2076212
2024-08-08 10:54:10 +01:00
Stephen Finucane
0e731cd22f identity: Use previous naming for 'application credential show' fields
We changed these in change Iba3fee2672d32266623c6f367beaabe84bd3d24e but
the '-c/--column' option provided by cliff currently requires an
explicit match on column names. Change them back for now. We can revert
this when cliff is a little bit cleverer.

Change-Id: I6b4f1b793dc383856bfdf9a01514381be3cd2bf1
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Related-bug: #2076212
2024-08-08 10:53:25 +01:00
Stephen Finucane
4a2fd82b07 compute: Make 'hypervisor show' a bit faster
In the event that a user provides a hypervisor name rather than an ID to
the 'hypervisor show' command, passing 'details=True' (the default) to
'find_hypervisor' will ensure we get the detailed response we need.
However, this comes at the cost of retrieving reams of additional
irrelevant data for all the other hypervisors. Rather than doing this,
use a summary view and then a second call to fetch only the hypervisor
we care about.

Change-Id: I92b53802e41a962c6f916c3a111dc2de7c12d0fc
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Closes-bug: #2072965
2024-08-07 13:50:28 +01:00
Stephen Finucane
04ebe0853d compute: Add 'uuid' column to aggregate list
Change-Id: I15d4a2d5980c1ba3e00f7d1bd09f11d0f42564e1
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Closes-bug: #2073542
2024-08-07 13:24:23 +01:00
Stephen Finucane
b8459c57c8 compute: Only pass admin_password on rebuild if set
In SDK change I3bc3150877c6c00aa9ec4355104308d7755aa1d4, we modified the
'rebuild_server' proxy method to use a sentinel 'unset' value so that we
could distinguish between fields that were not being changed and those
that were being changed to 'null'. However, we are currently passing the
'admin_password' field to the 'rebuild_server' SDK proxy command
regardless of whether it is set or not. Resolve this conflict.

Change-Id: If7b7585aadd43cdc6d2a9358f14223e43dc21a73
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Closes-bug: #2076232
2024-08-07 13:06:13 +01:00
Stephen Finucane
6693f555bc quota: Allow 'quota set' to function without volume service
Unlike cinderclient, SDK attempts to connect to a service as soon as you
create a client. A keystoneauth1.exceptions.catalog.EndpointNotFound
exception can be raised if this service does not exist in the service
catalog. Avoid this for the quota and limits commands by first checking
if the service is enabled.

In the process, we rework the 'is_volume_endpoint_enabled' helper we are
using to check for the existence of the service to *not* require a
volume client, since this was causing a chicken and egg issue for us
(and was also pretty much unnecessary).

Change-Id: I56e68f00ea221d689eb7f668e9e5ffa7d1a20184
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Closes-bug: #2076229
2024-08-07 11:56:07 +00:00
Zuul
a59262e44d Merge "Respect --skip-resource when deleting." 2024-08-01 13:21:54 +00:00
Tim Bishop
1d4aabab2e
Respect --skip-resource when deleting.
When running project cleanup and using the --skip-resource flag, this
flag is only used during the --dry-run stage. This change ensures it is
also used when deleting the resources which fixes the bug mentioned below.

Closes-Bug: #2074109
Change-Id: I8e50fd14dcde069b932cc8ec4bb4fc809f7d2eb7
2024-07-25 20:20:56 +01:00
Stephen Finucane
aa88db9448 Add callback on plugin load failure
I have seen a few cases where import errors (distutils - I am looking at you)
result in an extension not being available, but there is no indication why this
is the case. We do configure logging, but this happens too late (as part
of the 'cliff.app.App.run' call to execute a command, which calls
osc-lib's 'configure_logging' but which happens long after we've tried
to import our plugins) to be of any use. Instead, make use of a callback
to make it more obvious.

Change-Id: Id68b06161e445b79fe43f463e06cda3c4771ef02
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-07-24 17:00:07 +01:00
Zuul
37a22cf84c Merge "Add tests for 'default security group rule create'" 2024-07-23 15:25:51 +00:00
Zuul
965c61c90c Merge "Add volume snapshot unmanage support" 2024-07-23 12:58:03 +00:00
Zuul
e650c3eeaa Merge "Add DeleteVolumeSnapshot class to v3" 2024-07-23 12:58:02 +00:00
Zuul
c47ccb9721 Merge "Followup: Reduce LOC in volume v3 service" 2024-07-23 12:58:00 +00:00
Zuul
b223156906 Merge "Remove python-novaclient" 2024-07-18 18:03:28 +00:00
Zuul
70fbf687cf Merge "quota: Migrate 'quota *' to SDK" 2024-07-18 17:53:24 +00:00
Zuul
2d59c675dd Merge "quota: Split up 'quota list' command" 2024-07-18 13:35:21 +00:00
Zuul
692b06dfd5 Merge "quota: Default network quotas to not force" 2024-07-18 13:35:19 +00:00
Stephen Finucane
f68000d772 tests: Remove aliasing from extensions test
This isn't necessary and makes migration of the compute client a little
more difficult.

Change-Id: Ib07e60171c43838935ea30f4916bf68d54cdc944
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-07-18 13:39:39 +01:00
Stephen Finucane
0d89f01448 Remove TestServer base class
Simplify this somewhat.

Change-Id: I4ece72344e0e671c2f190fa9200e91d72333e96d
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-07-18 13:28:51 +01:00
Stephen Finucane
438e40db36 Remove python-novaclient
There are a few remnants left here but this is trivial to clean up now.

Change-Id: I517d906796338e64a31afa08b9ee6909b08e0115
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-07-18 13:28:51 +01:00
Stephen Finucane
ece30e8f70 compute: Allow adding, removing multiple SGs
We also ensure we call neutron rather than the deprecated nova proxy API
in the event that neutron is available.

Change-Id: I8315ea164fd3fa6c1d759f16677bfd6c24c4ef63
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2024-07-18 12:41:51 +01:00
Zuul
97bded1a3d Merge "quota: Add 'quota set --default' option" 2024-07-18 11:26:26 +00:00
Stephen Finucane
6127b44d0a quota: Migrate 'quota *' to SDK
This is done for both the compute and block storage services. The
network service was already using SDK.

Change-Id: Id7a6943b8b4d7d1330e7d7f13705f027d1b67189
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Depends-on: https://review.opendev.org/c/openstack/openstacksdk/+/923864
2024-07-15 18:19:43 +01:00
Zuul
45ac2b62fb Merge "quota: Remove deprecated quota options" 2024-07-15 16:17:47 +00:00
Zuul
cf81902402 Merge "quota: Move nova-network-related quota" 2024-07-15 16:02:25 +00:00
Zuul
716dff1052 Merge "tests: Remove references to novaclient methods" 2024-07-15 15:15:03 +00:00
Zuul
7219144dae Merge "network: Replace use of in-tree API client" 2024-07-15 15:01:18 +00:00
Zuul
e08cf1790f Merge "compute: Migrate 'server create' to SDK" 2024-07-15 15:01:16 +00:00
Zuul
c78cba654a Merge "compute: Prevent use of conflicting v*-fixed-ip for 'server create --nic'" 2024-07-15 13:12:58 +00:00
Zuul
1b8eabee4e Merge "compute: Migrate 'server evacuate' to SDK" 2024-07-15 13:05:00 +00:00
Zuul
f58f85857b Merge "compute: Migrate remaining server actions to SDK" 2024-07-15 13:04:59 +00:00
Zuul
c18eab5198 Merge "compute: Migrate 'server rebuild' to SDK" 2024-07-15 13:04:57 +00:00
Zuul
855686a881 Merge "compute: Avoid third API call during 'server show'" 2024-07-15 13:00:11 +00:00
Zuul
f1a3fc319d Merge "compute: Always use SDK client to display server" 2024-07-15 13:00:07 +00:00
Zuul
5898f13473 Merge "compute: Migrate 'server set', 'server unset' commands" 2024-07-15 13:00:02 +00:00
Zuul
816f4857dc Merge "compute: Migrate 'server migrate' to SDK" 2024-07-15 12:59:58 +00:00
Zuul
8b783fd8ad Merge "compute: Migrate 'server add/remove security group' to SDK" 2024-07-15 12:59:54 +00:00