When the openstacksdk is patched to properly support defining prefix
lengths when creating subnets, the resulting subnet show output
reveals a prefix_length column with a value of 'none'. This patch
hides the prefix_length column.
Change-Id: I59dfb0b1585ed624f9d82b3557df2ff5ff9d1b3e
Partial-Bug: 1754062
Depends-On: https://review.openstack.org/#/c/550558/
When we create a network qos rule we need specify the type so that we
can call the corresponding API. It's not possible to use the command
without the type so mark it as required. This was already being done
but inline.
Change-Id: I559f884bac198d2c69e800620aef66b200473418
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
There are a couple of other (networking-related) options which accept
paths, none of which insist on a URI-style path. Let's just drop this
bit of complexity before we release the feature.
Change-Id: Ia7f781d82f3f4695b49b55a39abbb6e582cd879c
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
The syntax of the '--block-device' parameter is complex and easily
screwed up. Allow users to load a block device config from a file. For
example:
$ openstack server create ... --block-device file:///tmp/bdm.json ...
This should alleviate the pain that is BDMv2 somewhat.
No functional tests are provided since we already have tests for the CSV
style of passing parameters and the unit tests show that the net result
is the same.
Change-Id: I3e3299bbdbbb343863b4c14fb4d9196ff3e1698d
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
This mostly reuses the existing tests for '--block-device-mapping',
which can hopefully be removed at some point in the future.
This highlights two issues with the implementation of this option.
Firstly, the 'boot_index' parameter is not required so don't mandate it.
Secondly, and more significantly, we were defaulting the destination
type for the 'image' source type to 'local'. Nova only allows you to
attach a single image to local mapping [1], which means this default
would only make sense if you were expecting users to use the
'--block-device' option exclusively and omit the '--image' option. This
is the *less common* case so this is a bad default. Default instead to a
destination type of 'volume' like everything else, and require users
specifying '--block-device' alone to pass 'destination_type=local'
explicitly.
[1] https://github.com/openstack/nova/blob/c8a6f8d2e/nova/block_device.py#L193-L206
Change-Id: I1718be965f57c3bbdb8a14f3cfac967dd4c55b4d
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
The neutron API supports filtering ports by name, but
the CLI was missing support for it like it does for
other networking resources.
Change-Id: I4ff339e18656013218a26f045b205cb7a02dd2fb
Story: #2008654
New implementation of the project cleanup based on the sdk.project_cleanup.
It is implemented as an additional OSC operation and will ideally obsolete the
`openstack project purge` giving flexibility to extend services support,
parallelization, filters, etc.
Change-Id: Ie08877f182379f73e5ec5ad4daaf84b3092c829c
The parameter isn't actually deprecated, since we need to support older
API microversion, however, we now emit an error if someone attempts to
boot a server with the wrong microversion. This would happen server-side
anyway since this parameter was removed entirely in API microversion
2.57.
Change-Id: I73864ccbf5bf181fecf505ca168c1a35a8b0af3a
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
These options are not supported from Nova API microversion 2.25 and
above. This can be a source of confusion. Start warning, with an eye on
erroring out in the future.
Change-Id: I53f27eb3e3c1a84d0d77a1672c008d0e8bb8536f
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
API microversion 2.25 introduced the 'block_migration=auto' value for
the os-migrateLive server action. This is a sensible default that we
should use, allowing users to avoid stating one of the
'--block-migration' or '--shared-migration' parameters explicitly.
While we're here, we take the opportunity to fix up some formatting in
the function, which is really rather messy.
Change-Id: Ieedc77d6dc3d4a3cd93b29672faa97dd4e8c1185
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
One of the last big gaps with novaclient. As noted in the release note,
the current '--block-device-mapping' format is based on the old BDM v1
format, even though it actually results in BDM v2-style requests to the
server. It's time to replace that.
Change-Id: If4eba38ccfb208ee186b90a0eec95e5fe6cf8415
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Add some volume-related options, namely '--snapshot', '--swap', and
'--ephemeral'. All are shortcuts to avoid having to use
'--block-device-mapping'.
Change-Id: I450e429ade46a7103740150c90e3ba9f2894e1a5
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
We're confirming or reverting a server migration, not a server migrate.
We've a number of 'server migration *' commands now so it makes sense to
move them under here.
Change-Id: Ib95bb36511dad1aafe75f0c88d10ded382e4fa5c
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
This replaces the 'server-migration-show' command provided by
novaclient.
Change-Id: I413310b481cc13b70853eb579417f6e6fad10d98
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Server migrations are (confusingly) a different thing returned by a
different API.
Change-Id: Ib6b7c8f9cc3d1521a993616f832d41651dc46f73
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
This has been around for a long time but was not exposed via OSC. Close
this gap.
Change-Id: I71aabf10f791f68ee7405ffb5e8317cc96cb3b38
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>