Neutron has got CRUD API for L3 conntrack helper since some time.
This patch adds support for it in the OSC.
OpenStack SDK supports that since [1]
This patch also bumps minimum OpenStack SDK version to
the 0.56.0 as that version introduced support for the
Neutron's L3 conntrack helper.
[1] https://review.opendev.org/c/openstack/openstacksdk/+/782870
Change-Id: I55604182ae50b6ad70c8bc1f7efad8859f191269
These mirror the 'cinder attachment-*' commands, with arguments copied
across essentially verbatim. The only significant departure is the
replacement of "tenant" terminology with "project".
volume attachment create
volume attachment delete
volume attachment list
volume attachment complete
volume attachment set
volume attachment show
Full support for filtering is deferred for now since that's a more
complicated change that requires additional commands be added first.
TODOs are included to this effect.
Change-Id: If47c2b56fe65ee2cee07c000d6ae3688d5ef3b42
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
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
Add support for Neutron address group CRUD operations. Subsequent patches
will be added to use address groups in security group rules.
Change-Id: I3c313fc9329837dde67815901528a34dca98ebcc
Implements: blueprint address-groups-in-sg-rules
Depends-On: https://review.opendev.org/738274
Depends-On: https://review.opendev.org/745594
This change adds a new 'openstack server evacuate' command to provide
parity with the 'nova evacuate' command. The term "evacuate" is
notoriously poor, in that it implies the instance is moved rather than
recreated, but it is retained since people are familiar with it now.
Change-Id: I1e32ca51036c501862d8e89b3144a9695d98a06f
Add ``openstack server migration list`` to fetch server migrations.
Part of blueprint add-user-id-field-to-the-migrations-table
Change-Id: I15b4a5aca8d0dee59dd293e7b1c7272cdfbeea20
$namespace = openstack.image.v{1|2}
The subcommand documents for $namespace were hardcoded and thus prone to
drift over time. This commit removes the hardcoded content and uses the
autoprogram-cliff directive to generate them automatically from the
subcommand configuration classes.
Some reorganization happened here. The `image` subcommand name is shared
by image v1 and v2. Previously the hardcoded document had them combined
and interleaved. Attempting to preserve this with autoprogram-cliff
would have required significant additional infrastructure. However,
since most readers care completely about one and not at all about the
other, we instead split the v1 and v2 versions of these commands into
separate pages. In case links to the old pages exist in the wild, they
are preserved, but moved (with redirects) to a hidden directory, and
populated simply with links to the new version-specific generated
documents.
Change-Id: I24dc6dc10671c7f1267c27002542f61f8a3c18ae
$namespace = openstack.identity.v{2|3}
The subcommand documents for $namespace were hardcoded and thus prone to
drift over time. This commit removes the hardcoded content and uses the
autoprogram-cliff directive to generate them automatically from the
subcommand configuration classes.
Special things:
- Some reorganization happened here. Certain subcommand names, such as
`endpoint` and `project`, are shared by identify v2 and v3. Previously
the hardcoded documents had them combined and interleaved. Attempting
to preserve this with autoprogram-cliff would have required
significant additional infrastructure. However, since most readers
care completely about one and not at all about the other, we instead
split the v2 and v3 versions of these commands into separate pages. In
case links to the old pages exist in the wild, they are preserved, but
moved (with redirects) to a hidden directory, and populated simply
with links to the new version-specific generated documents.
- The `federation domain` and `federation project` subcommands were
previously absent from the docs. They are added. These are such small
commands and they seem related, so they're put into a single document.
- Some pages were already being generated but were listing operations
individually instead of using wildcards (possibly because they were
created before wildcarding was supported by cliff). These are changed
to use wildcarding. (We want to do this wherever possible as it is
more future-proof in the event that more operations are added to a
subcommand later.)
- The `service provider` document was incorrectly titled `identity
provider`. Fixed.
Change-Id: I2030f9fe370038c5908b6eb6bed9692a73fe5067
This patch adds the --immutable and --no-immutable option to the
role, project and domain CLI.
Related-Patch: https://review.opendev.org/#/c/712182/
Change-Id: I9c3bdd741f28bf558267fb217818d947597ce13e
This commit introduces the --access-rules option for 'application
credential create' as well as new 'access rule' commands for listing,
showing, and deleting access rules.
bp whitelist-extension-for-app-creds
Change-Id: I04834b2874ec2a70da456a380b5bef03a392effa
The correct state name for a failing volume snapshot deletion is
'error_deleting' instead of 'error-deleting'. [1]
[1] 89d6a5042f/cinder/objects/fields.py (L126)
Task: #37844
Story: #2007037
Change-Id: Ia99900ece4f1cd29769b22ddaa3965789d719556
$namespace = openstack.compute.v2
The subcommand documents for $namespace were hardcoded and thus prone to
drift over time. This commit removes the hardcoded content and uses the
autoprogram-cliff directive to generate them automatically from the
subcommand configuration classes.
Many of these were already being generated. Some were missing a few
sub-subcommands, so those are added.
Change-Id: I1aa4b2655bafd2f6a5d83b658742f65d180eb128
$namespace = openstack.cli
The subcommand documents for $namespace were hardcoded and thus prone to
drift over time. This commit removes the hardcoded content and uses the
autoprogram-cliff directive to generate them automatically from the
subcommand configuration classes.
Change-Id: I1f7e9d0e5748f887dbc35200c3c8b4407da43e0b
$namespace = openstack.common
The subcommand documents for $namespace were hardcoded and thus prone to
drift over time. This commit removes the hardcoded content and uses the
autoprogram-cliff directive to generate them automatically from the
subcommand configuration classes.
This incorporates a correction to `openstack versions show`: The command
`openstack versions show --help` showed a copy/paste error, using
<region-name> for the metavar for both --service and --status. Fix.
Change-Id: I7658fed40d71f4c20ee27908ade433534657cfe5
Co-Authored-By: Pierre Prinetti <pierreprinetti@redhat.com>
Co-Authored-By: Matt Riedemann <mriedem.os@gmail.com>
The help page for network auto allocated topology had a link to a
newton-era networking guide document that has been superseded and is
now maintained in the neutron repository.
This commit adds 'neutron' to the openstackdocstheme configuration so
that the :neutron-doc: role works, and updates the link to point to the
modern version therein.
Change-Id: I5bcb40e265b22f15ff2f5ca4936160e231bb4075
$namespace = openstack.network.v2
The subcommand documents for $namespace were hardcoded and thus prone to
drift over time. This commit removes the hardcoded content and uses the
autoprogram-cliff directive to generate them automatically from the
subcommand configuration classes.
This one turned out to be quite involved, because we support both
neutron and nova-network. When running in a real cloud, the command
classes detect whether the neutron service is present, assume
nova-network if that service is not found, and only add parser options
relevant to the detected service. But the docs need to present both sets
of options. This was easy enough when they were hardcoded, but required
a bit of additional infrastructure for generated docs.
Change-Id: I426261eb1d86bcc68656aabd61f10b7f082da402
The command `openstack versions show --help` shows a copy-paste nit.
Change-Id: I9e4e86429ffd630c566bbdf2929e7995c9b0dbe1
Signed-off-by: Pierre Prinetti <pierreprinetti@redhat.com>
This patch introduces a new option --parent into project list,
to specify a parent project to filter projects which has
the given project as their parent.
Depends-on: https://review.opendev.org/#/c/677101
Change-Id: I6725262cf040e0ec6ceca9cf0462ce59224049c6
Add following commands:
floating ip port forwarding create
floating ip port forwarding delete
floating ip port forwarding list
floating ip port forwarding set
floating ip port forwarding show
Closes-Bug: #1811352
Change-Id: I6a5642e8acce28fc830410d4fa3180597b862761
With compute API microversion 2.53, nova-compute services
can only be deleted with the ID as a UUID to uniquely identify
the service in a multi-cell deployment. This documents that for
the "compute service delete <service>" argument. The description
of the "compute service list" command is also updated to mention
that the ID can be retrieved as a UUID using 2.53 or greater.
Change-Id: If7d4a27c0aaef588bcd77dd9edddec1e535fbf31
Story: 2005349
Task: 30302
This simply updates the docs for the compute service set --up
and --down options to mention that --os-compute-api-version 2.11
or greater is required to use those options.
Change-Id: I52891fe36c84d0df3e868ab4f3c8e2357e9ba529
When adding a security group rule, if no IP address is given
we will use '0.0.0.0/0', but if the ethertype is IPv6 we will
leave it as None. Change this to be '::/0' to match what we
do for IPv4 - use the "any" address. The neutron server
treats them both the same when checking for duplicates.
Because there are most likely entries in the DB using None
for the IP, print them as '0.0.0.0/0' or '::/0' so it is more
obvious what address they are actually referring to.
Also change to display the Ethertype column by default
instead of with --long, since easily knowing IPv4 or IPv6
is useful.
Change-Id: Ic396fc23caa66b6b0034c5d30b27c6ed499de5a6
Closes-bug: #1735575
The compute service commands emit a "Binary" in the output but
the --service filter option isn't as clear that it's the binary
(for set it is but not list) nor do the docs give an example
of a binary (typically nova-compute but could be others like
nova-conductor, nova-scheduler, etc). This simply mentions that
the --service option is the binary for "compute service list"
and gives an example value for the option in both list and set
help.
Change-Id: If87fc37352c3a251cc89041723adbe04dedf4f8a
The following were deprecated over two years ago and can now be removed:
* Remove ``backup`` commands in favor of ``volume backup``
* Remove ``snapshot`` commands in favor of ``volume snapshot``
* Remove ``volume create`` options ``--project``, ``--user`` and ``--multi-attach``
* Use of an auth-key positional argument in volume transfers
* ``volume transfer request`` no longer accepts 'auth_key' as a positional arg,
``--auth-key`` is now required
Internal (non-user-visible)
* Rename backup.py to volume_backup.py for Volume v1 and v2, update tests
These are backwards incompatible changes and will require a major
version bump after they are merged.
Change-Id: I94aa7a9824e44f9585ffb45e5e7637b9588539b4
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
Signed-off-by: Dean Troyer <dtroyer@gmail.com>
The following were deprecated over two years ago and can now be
removed/changed:
* Remove ``service create`` option ``--type``
* Remove ``role list`` options ``--project`` and ``--user``
* Remove ``user role list`` command
These are backwards incompatible changes and will require a major
version bump after they are merged.
Change-Id: I29e2fc9516dffbfd83eef0bc91e834dde99b4105
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
Signed-off-by: Dean Troyer <dtroyer@gmail.com>
The following were deprecated over two years ago and can now be removed:
* ``ip fixed add|remove`` in favor of ``server add|remove fixed ip``
* ``ip floating add|remove`` in favor of ``server add|remove floating ip``
These are backwards incompatible changes and will require a major
version bump after they are merged.
Change-Id: I10c4d32a3c0b55ad41a02afd3b14249bafcb55a9
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
Signed-off-by: Dean Troyer <dtroyer@gmail.com>
The default protocol used to create a security rule was changed to
``tcp``, which was a regression from the neutron client. Change it
back to ``any``, which skips sending the protocol to the API
server entirely when using the Neutron v2 API.
Users that had been creating rules without specifying a protocol
and expecting ``tcp`` need to change to use ``--protocol tcp``
explicitly.
Change-Id: Iedaa027240e00dced551513d8fa828564386b79f
Closes-bug: #1716789
There is a bug in the compute API until microversion 2.50
where the server-groups and server-group-members class
quota fields aren't returned. This just mentions that
microversion in the command help text.
Change-Id: I029a614a922d642c578618c478c4d0a29a394fc2
Task: 21490
Story: 2002194
Add network segment range command object in support of network segment
range management.
This patch set includes documentation, unit tests and functional tests
(currently skipped unit network segment range enabled in Neutron by
default) for the following new commands:
- "os network segment range create"
- "os network segment range delete"
- "os network segment range list"
- "os network segment range set"
- "os network segment range show"
Co-authored-by: Allain Legacy <Allain.legacy@windriver.com>
[depends on removed by dtroyer as those are all +W and
trying to pass the gate, OSC has it's freeze dealine looming]
Depends: https://review.openstack.org/624708
Depends: https://review.openstack.org/624709
Depends: https://review.openstack.org/638386
Partially-implements: blueprint network-segment-range-management
Change-Id: I335692f2db5be07c1c164f09b13f1abb80b7ba33