Access rules can now have the visibility of sensible fields
restricted, as well as the deletion can be prevented.
To do so, two new parameters were implemented in the access create
command: `restrict_visibility` and `restrict_deletion`.
In order to drop the delete restriction, users must specify
the `unrestrict` option while issuing the share access delete
command.
Depends-On: Iea422c9d6bc99a81cd88c5f4b7055d6a1cf97fdc
Change-Id: I31899a563c621e6f799e320fd990f9e510a8a9cc
Add OSC and SDK interfaces to create,
view, update and delete resource locks.
Depends-On: I146bc09e4e8a39797e22458ff6860346e11e592e
Partially-Implements: bp allow-locking-shares-against-deletion
Change-Id: Ib8586a4f80aa8c172d876c6745ae73b7bdaf4705
Added support for display count info in share snapshot list
and detail APIs:
1. /v2/snapshots?with_count=True
2. /v2/snapshots/detail?with_count=True
Microversion upgraded to 2.79
Related-Bug: #2024556
Depends-On: I37d8ca9022e2ea2c107c6695e20e951d7950043a
Change-Id: I230c2195c414eec28ebc5e5e9714726731307a95
Extend these into OSC capabilities where appropriate.
Bumps max microversion to 2.78.
Depends-On: I8d5a03eb127941a84eea5e6e9bdf76b3489f17a8
Implements: bp/metadata-for-share-resources
Change-Id: I204cd0aeb66dfb7f0b4da29413b80d76a6034aa3
Allows to configure optional field 'quiesce_wait_time' in share
replica promote for microversion >= 2.75.
Closes-bug: #2000171
Change-Id: I9ea0705da97d4343b36db3d8023ca237437768cf
Depends-On: Ib02063ee8b82f7374cd89f90e7f24a845c6c7cd7
Introduce MetadataCapableResource and
MetadataCapableManager to abstract away
metadata operations for a resource and
collections of resources in the manilaclient
SDK. Extend these into OSC capabilities
where appropriate. Bumps max microversion to 2.73.
In this change:
1) Shares
2) Snapshots
Depends-On: I91151792d033a4297557cd5f330053d78895eb78
Implements: bp/metadata-for-share-resources
Change-Id: I82791614b62b540eb108e99ae8ee5ce62b36b42c
The end user can soft delete or restore share by manila client.
and can list shares in recycle bin.
update micversion to 2.69
Depends-On: Ic838eec5fea890be6513514053329b1d2d86b3ba
Partially-Implements: blueprint manila-share-support-recycle-bin
Change-Id: Ic4748b59e2d99388c832969b7bef537b4115e4b1
This commit adds --scheduler_hints option to share replica create
command of manila shellclient. For OSC, --scheduler-hint is used.
Users can specify scheduler hints e.g. "only_host=host@backend#pool"
to share replica create command which will then force share replica
creation on the specified host.
Depends-on: I2e6d8709fc02df16622bdc910127fa489835db38
Closes-Bug: #1950313
Change-Id: Iba3ed8107fc7ee8a056c8dee04406e2feb8ca055
Manila is now capable of successfully filter share group types
considering its extra specs. This change bumps the microversion
so clients can benefit from that change.
Implements: blueprint support-group-spec-search-share-group-type-api
Depends-On: https://review.opendev.org/c/openstack/manila/+/821002
Change-Id: I24cd94e1744f21a75a16926b328dc7d53c142adc
This commit add --scheduler_hints option to share create command. Users
can specify affinity/anti-affinity share ids to share create command as
value in <key=value> pairs of scheduler hints. The possible keys are
same_host and different_host. Available from microversion 2.65.
Partially-implements: bp affinity-antiaffinity-filter
Change-Id: I8a9598eb16f08ed6539e8996e28cfc6e19586483
This change adds two new commands to the client:
- 'share-network-security-service-update'
- 'share-network-security-service-update-check'
- 'share-network-security-service-add-check'
- 'share-network-reset-state'
Partially Implements: bp add-security-service-in-use-share-networks
Co-Authored-By: Carlos Eduardo <ces.eduardo98@gmail.com>
Co-Authored-By: Andre Beltrami <debeltrami@gmail.com>
Co-Authored-By: Douglas Viroel <viroel@gmail.com>
Depends-On: Id121ba942c7840a7cd7574f08a524fd4dbe06f64
Change-Id: Ib7b67b4c0ce9b16e1ee4a8291cb48c0b1c7ca367
Implements the commands for performing the share server migration.
They are: share-server-migration-reset-task-state,
share-server-migration-complete, share-server-migration-cancel,
share-server-migration-start, share-server-migration-check
and share-server-migration-get-progress.
Co-Authored-By: Daniel Tapia <danielarthurt@gmail.com>
Co-Authored-By: Andre Beltrami <debeltrami@gmail.com>
Co-Authored-By: Douglas Viroel <viroel@gmail.com>
Change-Id: Id829a375d828a4808306fd1a42bc7548721feb19
Partially-implements: bp share-server-migration
Depends-On: Ic0751027d2c3f1ef7ab0f7836baff3070a230cfd
Depends-On: I46a0cee0a4625d950f02fa7a5bf612de926451b5
- Removed all experimental mentions from share group feature
commands.
Depends-On: I080683541d527657f01008d43529fc53c19a09cd
Change-Id: I585c9c845851fcd581e08b0084fc2528b85cd632
Partially-Implements: bp graduate-share-groups-feature
This patch updates the python manila client
api version in order to consider the changes
implemented in the view of shares and share
replicas. A new field called ``progress`` was
added and will show the progress of the
create share from snapshot operation.
Partially-implements: bp create-share-from-snapshot-in-another-pool-or-backend
Depends-On: Iab13a0961eb4a387a502246e5d4b79bc9046e04b
Change-Id: Id73f6facca03e8490846b68c404593f16e95f8bd
- Added support to two new quotas for share replicas, being
`share_replicas` and `replica_gigabytes`.
Depends-On: I8ba7bc6f167c28d6c169b2187d0e1bda7cad3f69
Partially-Implements: bp limit-share-replicas-per-share
Change-Id: I700adc0cb64e03ef66cf7123601a406891d526f2
- Added CLI commands for subnets creation, deletion and exhibition.
- Updated commands for share server manage and added a new
parameter to share server list.
API microverion has been bumped to 2.51.
Closes-Bug: #1588144
Partially-implements: bp share-network-multiple-subnets
Change-Id: I55c85285cbdc9aaf2c0bab2f12477212b32b799a
Depends-On: Id8814a8b26c9b9dcb1fe71d0d7e9b79e8b8a9210
Co-Authored-By: lseki <luciomitsuru.seki@fit-tecnologia.org.br>
Currently, only the name and description and public access of share-type
is set when the share-type is created, and not allowed to be edited
after the share-type is created. We can only set extra spec for share-type.
But not name or description or public access for share-type.
Change-Id: Ia0df0d46e11d0438e16fc910fc377f9dd4e85521
Partially-Implements: blueprint update-share-type-name-or-description
Depends-On: https://review.opendev.org/669651
- Added CLI commands for managing and unmanaging share servers.
- Updated CLI command for managing shares to accept
share_server_id parameter.
API microversion has been bumped to 2.49.
Partially-implements: bp manage-unmanage-with-share-servers
Change-Id: If1403079b20471645bf869da74bf4db37d59811c
- Add share_replica_export_locations module to the
manilaclient SDK.
- Add 'share-replica-export-location-list' and
'share-replica-export-location-show' commands to
the manilaclient shell module.
- Add export_locations attr to 'share-replica-show'
command in the shell module.
Change-Id: I0edb0d56f5c8f439932c18d510aad0457112b75e
Depends-On: https://review.openstack.org/#/c/628069/
Implements: bp export-locations-az
When we use manila client to create a share type or share group
type, the is_default value is always empty, this patch is to fix
this issue.
Depends-On: Ia8bcb632591fc0b5438847b22ec59c2039ecf5f1
Change-Id: Ib264d8422fe57701f990cbbf7ea5d1e90b8b0008
Closes-bug: #1743941
Now only share have metadata property.
We should support it for access rule as well.
Depends-On: https://review.openstack.org/#/c/570708/
Change-Id: I41b2882ecd16ed03bece05a7a77a387c9077bf5c
Partly-Implements: bp metadata-for-access-rule
Since manila server allows filter search extra_specs and is_public,
so it's better to add this in manila client as well.
Change-Id: Ie85a7c09d4d7c6ddc31adb5125feea265ad8fced
Depends-On: Id577ae9d08dc0fae3dcac78d98ec0456f8378417
Partially-Implements: blueprint support-filter-search-for-share-type
Add support for share group quotas implemented on server side [1].
[1] I397a8e886226cb22fa50abdf2a4a938bb04c655d
Change-Id: Ib2b12d906c54c05faf8a72ac851d100e25023d50
Implements Blueprint add-share-groups-quota
Following CLI interface changes are implemented:
1) update share type quotas:
$ manila quota-update ... --share-type %share_type_name_or_id% ...
2) get share type quotas:
$ manila quota-show ... --share-type %share_type_name_or_id% ...
3) delete/reset share type quotas:
$ manila quota-delete ... --share-type %share_type_name_or_id% ...
'quota-defaults' stays unchanged as it is the same for all kinds of
quotas - project, user or share type.
Implements BluePrint support-quotas-per-share-type
Change-Id: I0cd2bc41193e50b330456b14c5f66134a513cc32
Allows listing, showing and deleting of user messages.
Change-Id: I5ffb840a271c518f62ee1accfd8e20a97f45594d
Partially-implements: blueprint user-messages
Depends-On: Ia0cc524e0bfb2ca5e495e575e17e9911c746690b
When we do manila access-list, the 'created_at' and 'updated_at' time
should be shown to the user. And then the user could determine which
is the recent access rule. As designed, the recent access-allow
rule caused the error access-status of share instance.
The API change [1] has been merged.
[1] Iad6070d60ec77b7de9cc9679cfa7478876084da1
Change-Id: I4b10faa18a5e4d7394083cd36851fd0260df86a2
Closes-Bug: #1682795
This patch adds support to manila client for the mountable snapshots
feature.
Co-Authored-By: Miriam Yumi <miriam.peixoto@fit-tecnologia.org.br>
Co-Authored-By: Alyson Rosa <alyson.rosa@fit-tecnologia.org.br>
Implements: blueprint manila-mountable-snapshots
Change-Id: I785a784bcae7cf3bcef4fa6c64ba28ee58328389
Depends-On: I65f398a05f82eef31ec317d70dfa101483b44b30
Manila needs a grouping construct that, like shares, is a 1st-class
atomic data type. Our experience with CGs has demonstrated the
complexity of adding a grouping capability, yet there are other use
cases such as migration, replication, and backup in which some
storage controllers could only offer such features on share groups.
CGs also highlighted the poor optics of an advanced feature with
comparatively little potential for vendor support. And adding new
grouping constructs for each new feature is not technically
feasible. All of the above may be addressed by generic groups,
which we think is a clean extension to the original architecture of
Manila.
Implements: blueprint manila-share-groups
Change-Id: I8e29baed62355fc31caeec9c7a66eaebfcbdf184
The API semantics have not changed on the server.
However, state transitions are more granular. [1]
Bump the request version to parse these changes
[1] Ic25e63215b5ba723cbc8cab7c51789c698e76f28
Partially-implements bp: fix-and-improve-access-rules
Change-Id: I6bbb7eea59ee817f69fc60068c471cdb66e3b9dc
This commit adds support to Manila client for the
share-revert-to-snapshot feature.
Implements: blueprint manila-share-revert-to-snapshot
Depends-On: Id497e13070e0003db2db951526a52de6c2182cca
Change-Id: Ia9c63ac416db47baae78b02ffcab5a60892cbf5c
Nova network was deprecated in Newton and is no longer supported for
regular deployments in Ocata [1]. In manila itself, changes [2] and
[3] remove nova network plugin support in manila services and remove
the nova-network-id field from the database model for share networks.
Add a new micro-version in which nova-network-id options are no longer
allowed when creating or modifying share networks.
[1] http://docs.openstack.org/releasenotes/nova/unreleased.html
[2] I846b760fa7c01f7f86768399a2bfad9ced7e57cd
[3] I8b9a559fbea61979f01737ed1dc272276c4f1269
Partially-implements: bp remove-nova-net-plugin
Closes-Bug: #1656756
Change-Id: Ic27b7d26a5a7d1100e57ee8a857fc45fc3b0a909
The snapshot_support extra spec has always meant two things: a driver
can take snapshots and create shares from snapshots. As we add alternate
snapshot semantics, it is likely that some drivers will want to support
snapshots and some of the new semantics while being unable to create new
shares from snapshots.
This work adds support to manila client for the new extra spec in manila
server, create_share_from_snapshot_support.
Depends-On: Ib0ad5fbfdf6297665c208149b08c8d21b3c232be
Implements: blueprint add-create-share-from-snapshot-extra-spec
Change-Id: I07b70f04e6fb2b5797557c4f4796c6883680eff3
Administrators intend to get the pool's information filtered by share
type more directly. The blueprint aims to cover this situation:
1. add '--detail' to support retrieving pool list in detail or not
2. add '--share_type' to filter pools by share_type name or id
Implements: blueprint pool-list-by-share-type
Change-Id: Ia100eb6b4b83c8e2cc91f6fc86f01caa9bce87d4
The Oslo team has moved all previously incubated code from the
openstack/oslo-incubator repository into separate library repositories
and released those libraries to the Python Package Index. Many of our
big tent project teams are still using the old, unsupported, incubated
versions of the code. The Oslo team has been working to remove that
incubated code from projects, and the time has come to finish that work.
As one of community-wide goals in Ocata, please see:
https://github.com/openstack/governance/blob/master/goals/ocata/remove-incubated-oslo-code.rst
Note: This commit also fix pep8 violations.
Change-Id: I03288adb94c702d1d63df88ef9ba33a2ff59eaa3
Implemented new parameters:
- Added 'Writable' API parameter: user chooses whether share must
remain writable during migration.
- Added 'Preserve Metadata' API parameter: user chooses whether
share must preserve all file metadata on migration.
- Added 'Non-disruptive' API parameter: user chooses whether
migration of share must be performed non-disruptively.
- Removed 'Notify' parameter.
- Renamed existing 'Force Host Copy' parameter to
'Skip Optimized Migration'.
- Added 'New Share Network' API parameter: user chooses new
share network to migrate to if desired.
Implements: blueprint newton-migration-improvements
Depends-On: Ief49a46c86ed3c22d3b31021aff86a9ce0ecbe3b
Change-Id: I6e7a1d854d9a09f10511c5d47715b1979813f947
Expose access credentials/keys returned by storage
backends (e.g. Ceph) with an internal authentication
system for client identities that are granted share
access.
Partially implements bp auth-access-keys
Depends-On: I486064f117cf3001dba7735ca92a7d89aee3ce5b
Change-Id: I312dd311fcee74a7c62bfc62823e5e3cbf2371ec
Support new API entry points for share snapshot instances:
- share-snapshot-instance-list
- share-snapshot-instance-show
- share-snapshot-instance-reset-status
Implements: blueprint snapshot-instances
Change-Id: Ica1e81012f19926e0f1ba9cd6d8eecc5fbbf40b5
For the moment we cannot use experimental APIs using "python" client.
It is possible only if we use shell client (CLI).
It means, we cannot use "share replication", "share migration" and
"consistency groups" APIs of python manilaclient from other apps
such as Manila UI. So, add special experimental header on python
client level instead of CLI.
Change-Id: I6eed5dcfd1cb309817e083856b40e10cc6f970f6
Closes-Bug: #1599586
Both 'manila list --all-tenants' and 'manila list --public'
should show column Project ID. Project/Tenant ownership of
shares is vital information, e.g. when working with project
quota allocations.
'manila list' doesn't show public shares of other projects.
Without '--all-tenants' and without '--public' the result
is scoped to the project/tenant of the user issuing the command.
So, it would be redundant to display a column for this.
Same fix has been put for snapshot-list --all-tenants too.
DocImpact
Change-Id: I7afae542c391041d48c28e268ab59c83447bb940
Closes-Bug: #1570085
Change the api version regex to forbid empty minor versions,
thereby ensuring that manilaclient raises an UnsupportedVersion
exception as one would expect in this case.
Change-Id: I93268b15ec0b5ee95ea3599bb75bf6fa364e0b91
Closes-Bug: #1590409
If the maximum client version is higher than the maximum server version,
but the server version is otherwise valid, an UnsupportedVersion
exception is thrown. This bug fixes this issue by downgrading the
requested version, during API version discovery, from the maximum
client version to the maximum server version. The maximum server version
must be supported by the client. If all conditions are properly met the
client will continue to use the maximum server version for the remainder
of the request.
In order to log that the client version is being downgraded to match
the server version, when using the --debug flag, it was necessary to
update the logging configuration. Logging can now be used anywhere in
manilaclient as needed.
Change-Id: I96d273071966d2dc63de40c6f1b777fbb34a50fa
Closes-Bug: 1559290
This patch displays the preferred flag for share export
locations, adjusts the other values displayed for export
locations to match the updated summary views from the server,
and updates the minimum microversion to match the server.
Change-Id: I40b236b38a97146dfb6aa2b7f20648c5e1ffa81c
Implements: blueprint update-export-location-retrieval-apis