Shared File System API¶
The Shared File System Class¶
The high-level interface for accessing the shared file systems service API is
available through the shared_file_system
member of a Connection
object. The shared_file_system
member will only
be added if the service is detected. share
is an alias of the
shared_file_system
member.
Shared File System Availability Zones¶
Interact with Availability Zones supported by the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- availability_zones()
Retrieve shared file system availability zones
- Returns
A generator of availability zone resources
- Return type
Shared File System Shares¶
Interact with Shares supported by the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- shares(details=True, **query)
Lists all shares with details
- Parameters
query (kwargs) –
Optional query parameters to be sent to limit the shares being returned. Available parameters include:
status: Filters by a share status
share_server_id: The UUID of the share server.
metadata: One or more metadata key and value pairs as a url encoded dictionary of strings.
extra_specs: The extra specifications as a set of one or more key-value pairs.
share_type_id: The UUID of a share type to query resources by.
name: The user defined name of the resource to filter resources by.
snapshot_id: The UUID of the share’s base snapshot to filter the request based on.
host: The host name of the resource to query with.
share_network_id: The UUID of the share network to filter resources by.
project_id: The ID of the project that owns the resource.
is_public: A boolean query parameter that, when set to true, allows retrieving public resources that belong to all projects.
share_group_id: The UUID of a share group to filter resource.
export_location_id: The export location UUID that can be used to filter shares or share instances.
export_location_path: The export location path that can be used to filter shares or share instances.
name~: The name pattern that can be used to filter shares, share snapshots, share networks or share groups.
description~: The description pattern that can be used to filter shares, share snapshots, share networks or share groups.
with_count: Whether to show count in API response or not, default is False.
limit: The maximum number of shares to return.
offset: The offset to define start point of share or share group listing.
sort_key: The key to sort a list of shares.
sort_dir: The direction to sort a list of shares. A valid value is asc, or desc.
- Returns
Details of shares resources
- Return type
- find_share(name_or_id, ignore_missing=True, **query)
Find a single share
- Parameters
name_or_id – The name or ID of a share.
ignore_missing (bool) – When set to
False
ResourceNotFound
will be raised when the resource does not exist. When set toTrue
, None will be returned when attempting to find a nonexistent resource.query (dict) – Any additional parameters to be passed into underlying methods. such as query filters.
- Returns
One
Share
or None
- get_share(share_id)
Lists details of a single share
- Parameters
share – The ID of the share to get
- Returns
Details of the identified share
- Return type
- delete_share(share, ignore_missing=True)
Deletes a single share
- Parameters
share – The ID of the share to delete
- Returns
Result of the
delete
- Return type
None
- update_share(share_id, **attrs)
Updates details of a single share.
- Parameters
share – The ID of the share to update
attrs (dict) – The attributes to update on the share
- Returns
the updated share
- Return type
- create_share(**attrs)
Creates a share from attributes
- Returns
Details of the new share
- Parameters
attrs (dict) – Attributes which will be used to create a
Shares
, comprised of the properties on the Shares class. ‘size’ and ‘share’ are required to create a share.- Return type
- revert_share_to_snapshot(share_id, snapshot_id)
- Reverts a share to the specified snapshot, which must be
the most recent one known to manila.
- Parameters
share_id – The ID of the share to revert
snapshot_id – The ID of the snapshot to revert to
- Returns
Result of the
revert
- Return type
None
- manage_share(protocol, export_path, service_host, **params)
Manage a share.
- Parameters
protocol (str) – The shared file systems protocol of this share.
export_path (str) – The export path formatted according to the protocol.
service_host (str) – The manage-share service host.
params (kwargs) – Optional parameters to be sent. Available parameters include: * name: The user defined name of the resource. * share_type: The name or ID of the share type to be used to create the resource. * driver_options: A set of one or more key and value pairs, as a dictionary of strings, that describe driver options. * is_public: The level of visibility for the share. * description: The user defiend description of the resource. * share_server_id: The UUID of the share server.
- Returns
The share that was managed.
- unmanage_share(share_id)
Unmanage the share with the given share ID.
- Parameters
share_id – The ID of the share to unmanage.
- Returns
None
- resize_share(share_id, new_size, no_shrink=False, no_extend=False, force=False)
Resizes a share, extending/shrinking the share as needed.
- Parameters
share_id – The ID of the share to resize
new_size – The new size of the share in GiBs. If new_size is the same as the current size, then nothing is done.
no_shrink (bool) – If set to True, the given share is not shrunk, even if shrinking the share is required to get the share to the given size. This could be useful for extending shares to a minimum size, while not shrinking shares to the given size. This defaults to False.
no_extend (bool) – If set to True, the given share is not extended, even if extending the share is required to get the share to the given size. This could be useful for shrinking shares to a maximum size, while not extending smaller shares to that maximum size. This defaults to False.
force (bool) – Whether or not force should be used, in the case where the share should be extended.
- Returns
None
Shared File System Storage Pools¶
Interact with the storage pool statistics exposed by the Shared File Systems Service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- storage_pools(details=True, **query)
Lists all back-end storage pools with details
- Parameters
query (kwargs) –
Optional query parameters to be sent to limit the storage pools being returned. Available parameters include:
pool_name: The pool name for the back end.
host_name: The host name for the back end.
backend_name: The name of the back end.
capabilities: The capabilities for the storage back end.
share_type: The share type name or UUID.
- Returns
A generator of manila storage pool resources
- Return type
Shared File System User Messages¶
View and manipulate asynchronous user messages emitted by the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- user_messages(**query)
List shared file system user messages
- Parameters
query (kwargs) –
Optional query parameters to be sent to limit the messages being returned. Available parameters include:
action_id: The ID of the action during which the message was created.
detail_id: The ID of the message detail.
limit: The maximum number of shares to return.
message_level: The message level.
offset: The offset to define start point of share or share group listing.
sort_key: The key to sort a list of messages.
sort_dir: The direction to sort a list of shares.
project_id: The ID of the project for which the message was created.
request_id: The ID of the request during which the message was created.
resource_id: The UUID of the resource for which the message was created.
resource_type: The type of the resource for which the message was created.
- Returns
A generator of user message resources
- Return type
- get_user_message(message_id)
List details of a single user message
- Parameters
message_id – The ID of the user message
- Returns
Details of the identified user message
- Return type
- delete_user_message(message_id, ignore_missing=True)
Deletes a single user message
- Parameters
message_id – The ID of the user message
- Returns
Result of the “delete” on the user message
- Return type
Shared File System Limits¶
Get absolute limits of resources supported by the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- limits(**query)
Lists all share limits.
- Parameters
query (kwargs) – Optional query parameters to be sent to limit the share limits being returned.
- Returns
A generator of manila share limits resources
- Return type
Shared File System Snapshots¶
Interact with Share Snapshots supported by the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- share_snapshots(details=True, **query)
Lists all share snapshots with details.
- Parameters
query (kwargs) –
Optional query parameters to be sent to limit the snapshots being returned. Available parameters include:
project_id: The ID of the user or service making the API request.
- Returns
A generator of manila share snapshot resources
- Return type
- get_share_snapshot(snapshot_id)
Lists details of a single share snapshot
- Parameters
snapshot_id – The ID of the snapshot to get
- Returns
Details of the identified share snapshot
- Return type
- create_share_snapshot(**attrs)
Creates a share snapshot from attributes
- Returns
Details of the new share snapshot
- Return type
- update_share_snapshot(snapshot_id, **attrs)
Updates details of a single share.
- Parameters
snapshot_id – The ID of the snapshot to update
- Pram dict attrs
The attributes to update on the snapshot
- Returns
the updated share snapshot
- Return type
- delete_share_snapshot(snapshot_id, ignore_missing=True)
Deletes a single share snapshot
- Parameters
snapshot_id – The ID of the snapshot to delete
- Returns
Result of the
delete
- Return type
None
Shared File System Share Snapshot Instances¶
Interact with Share Snapshot Instances supported by the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- share_snapshot_instances(details=True, **query)
Lists all share snapshot instances with details.
- Parameters
details (bool) – Whether to fetch detailed resource descriptions. Defaults to True.
query (kwargs) –
Optional query parameters to be sent to limit the share snapshot instance being returned. Available parameters include:
- snapshot_id: The UUID of the share’s base snapshot to filter
the request based on.
- project_id: The project ID of the user or service making the
request.
- Returns
A generator of share snapshot instance resources
- Return type
ShareSnapshotInstance
- get_share_snapshot_instance(snapshot_instance_id)
Lists details of a single share snapshot instance
- Parameters
snapshot_instance_id – The ID of the snapshot instance to get
- Returns
Details of the identified snapshot instance
- Return type
ShareSnapshotInstance
Shared File System Share Networks¶
Create and manipulate Share Networks with the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- share_networks(details=True, **query)
Lists all share networks with details.
- Parameters
query (dict) –
Optional query parameters to be sent to limit the resources being returned. Available parameters include:
name~: The user defined name of the resource to filter resources by.
project_id: The ID of the user or service making the request.
description~: The description pattern that can be used to filter shares, share snapshots, share networks or share groups.
all_projects: (Admin only). Defines whether to list the requested resources for all projects.
- Returns
Details of shares networks
- Return type
ShareNetwork
- get_share_network(share_network_id)
Lists details of a single share network
- Parameters
share_network – The ID of the share network to get
- Returns
Details of the identified share network
- Return type
ShareNetwork
- delete_share_network(share_network_id, ignore_missing=True)
Deletes a single share network
- Parameters
share_network_id – The ID of the share network to delete
- Return type
None
- update_share_network(share_network_id, **attrs)
Updates details of a single share network.
- Parameters
share_network_id – The ID of the share network to update
- Pram dict attrs
The attributes to update on the share network
- Returns
the updated share network
- Return type
ShareNetwork
- create_share_network(**attrs)
Creates a share network from attributes
- Returns
Details of the new share network
- Parameters
attrs (dict) – Attributes which will be used to create a
ShareNetwork
,comprised of the properties on the ShareNetwork class.- Return type
ShareNetwork
Shared File System Share Instances¶
Administrators can list, show information for, explicitly set the state of, and force-delete share instances within the Shared File Systems Service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- share_instances(**query)
Lists all share instances.
- Parameters
query (kwargs) – Optional query parameters to be sent to limit the share instances being returned. Available parameters include:
export_location_id: The export location UUID that can be used to filter share instances.
export_location_path: The export location path that can be used to filter share instances.
- Returns
Details of share instances resources
- Return type
ShareInstance
- get_share_instance(share_instance_id)
Shows details for a single share instance
- Parameters
share_instance_id – The UUID of the share instance to get
- Returns
Details of the identified share instance
- Return type
ShareInstance
- reset_share_instance_status(share_instance_id, status)
Explicitly updates the state of a share instance.
- Parameters
share_instance_id – The UUID of the share instance to reset.
status – The share or share instance status to be set.
- Returns
None
- delete_share_instance(share_instance_id)
Force-deletes a share instance
- Parameters
share_instance – The ID of the share instance to delete
- Returns
None
Shared File System Share Network Subnets¶
Create and manipulate Share Network Subnets with the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- share_network_subnets(share_network_id)
Lists all share network subnets with details.
- Parameters
share_network_id – The id of the share network for which Share Network Subnets should be listed.
- Returns
A generator of manila share network subnets
- Return type
- get_share_network_subnet(share_network_id, share_network_subnet_id)
Lists details of a single share network subnet.
- Parameters
share_network_id – The id of the share network associated with the Share Network Subnet.
share_network_subnet_id – The id of the Share Network Subnet to retrieve.
- Returns
Details of the identified share network subnet
- Return type
- create_share_network_subnet(share_network_id, **attrs)
Creates a share network subnet from attributes
- Parameters
share_network_id – The id of the share network wthin which the the Share Network Subnet should be created.
attrs (dict) – Attributes which will be used to create a share network subnet.
- Returns
Details of the new share network subnet.
- Return type
- delete_share_network_subnet(share_network_id, share_network_subnet, ignore_missing=True)
Deletes a share network subnet.
- Parameters
share_network_id – The id of the Share Network associated with the Share Network Subnet.
share_network_subnet – The id of the Share Network Subnet which should be deleted.
- Returns
Result of the
delete
- Return type
None
Shared File System Share Access Rules¶
Create, View, and Delete access rules for shares from the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- access_rules(share, **query)
Lists the access rules on a share.
- Returns
A generator of the share access rules.
- Return type
ShareAccessRules
- get_access_rule(access_id)
List details of an access rule.
- Parameters
access_id – The id of the access rule to get
- Returns
Details of the identified access rule.
- Return type
ShareAccessRules
- create_access_rule(share_id, **attrs)
Creates an access rule from attributes
- Returns
Details of the new access rule
- Parameters
share_id – The ID of the share
attrs (dict) – Attributes which will be used to create a
ShareAccessRules
, comprised of the properties on the ShareAccessRules class.
- Return type
ShareAccessRules
- delete_access_rule(access_id, share_id, ignore_missing=True)
Deletes an access rule
- Parameters
access_id – The id of the access rule to get
share_id – The ID of the share
- Return type
requests.models.Response
HTTP response from internal requests client
Shared File System Share Groups¶
Interact with Share groups supported by the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- share_groups(**query)
Lists all share groups.
- Parameters
query (kwargs) –
Optional query parameters to be sent to limit the share groups being returned. Available parameters include:
status: Filters by a share group status.
- name: The user defined name of the resource to filter resources
by.
- description: The user defined description text that can be used
to filter resources.
project_id: The project ID of the user or service.
share_server_id: The UUID of the share server.
- snapshot_id: The UUID of the share’s base snapshot to filter
the request based on.
host: The host name for the back end.
- share_network_id: The UUID of the share network to filter
resources by.
- share_group_type_id: The share group type ID to filter
share groups.
- share_group_snapshot_id: The source share group snapshot ID to
list the share group.
- share_types: A list of one or more share type IDs. Allows
filtering share groups.
limit: The maximum number of share groups members to return.
- offset: The offset to define start point of share or share
group listing.
sort_key: The key to sort a list of shares.
sort_dir: The direction to sort a list of shares
- name~: The name pattern that can be used to filter shares,
share snapshots, share networks or share groups.
- description~: The description pattern that can be used to
filter shares, share snapshots, share networks or share groups.
- Returns
A generator of manila share group resources
- Return type
ShareGroup
- get_share_group(share_group_id)
Lists details for a share group.
- Parameters
share – The ID of the share group to get
- Returns
Details of the identified share group
- Return type
ShareGroup
- find_share_group(name_or_id, ignore_missing=True)
Finds a single share group
- Parameters
name_or_id – The name or ID of a share group.
ignore_missing (bool) – When set to
False
ResourceNotFound
will be raised when the resource does not exist. When set toTrue
, None will be returned when attempting to find a nonexistent resource.
- Returns
One
ShareGroup
or None
- create_share_group(**attrs)
Creates a share group from attributes
- Returns
Details of the new share group
- Return type
ShareGroup
- update_share_group(share_group_id, **kwargs)
Updates details of a single share group
- Parameters
share – The ID of the share group
- Returns
Updated details of the identified share group
- Return type
ShareGroup
- delete_share_group(share_group_id, ignore_missing=True)
Deletes a single share group
- Parameters
share – The ID of the share group
- Returns
Result of the “delete” on share group
- Return type
ShareGroup
Shared File System Share Group Snapshots¶
Interact with Share Group Snapshots by the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- share_group_snapshots(details=True, **query)
Lists all share group snapshots.
- Parameters
query (kwargs) –
Optional query parameters to be sent to limit the share group snapshots being returned. Available parameters include:
project_id: The ID of the project that owns the resource.
name: The user defined name of the resource to filter resources.
description: The user defined description text that can be used to filter resources.
status: Filters by a share status
share_group_id: The UUID of a share group to filter resource.
limit: The maximum number of share group snapshot members to return.
offset: The offset to define start point of share or share group listing.
sort_key: The key to sort a list of shares.
sort_dir: The direction to sort a list of shares. A valid value is asc, or desc.
- Returns
Details of share group snapshots resources
- Return type
ShareGroupSnapshot
- get_share_group_snapshot(group_snapshot_id)
Show share group snapshot details
- Parameters
group_snapshot_id – The ID of the group snapshot to get
- Returns
Details of the group snapshot
- Return type
ShareGroupSnapshot
- create_share_group_snapshot(share_group_id, **attrs)
Creates a point-in-time snapshot copy of a share group.
- Returns
Details of the new snapshot
- Parameters
attrs (dict) – Attributes which will be used to create a
ShareGroupSnapshots
,'share_group_id' – ID of the share group to have the snapshot taken.
- Return type
ShareGroupSnapshot
- reset_share_group_snapshot_status(group_snapshot_id, status)
Reset share group snapshot state.
- Parameters
group_snapshot_id – The ID of the share group snapshot to reset
status – The state of the share group snapshot to be set, A valid value is “creating”, “error”, “available”, “deleting”, “error_deleting”.
- Return type
None
- update_share_group_snapshot(group_snapshot_id, **attrs)
Updates a share group snapshot.
- Parameters
group_snapshot_id – The ID of the share group snapshot to update
attrs (dict) – The attributes to update on the share group snapshot
- Returns
the updated share group snapshot
- Return type
ShareGroupSnapshot
- delete_share_group_snapshot(group_snapshot_id, ignore_missing=True)
Deletes a share group snapshot.
- Parameters
group_snapshot_id – The ID of the share group snapshot to delete
- Return type
None
Shared File System Share Metadata¶
List, Get, Create, Update, and Delete metadata for shares from the Shared File Systems service.
- class openstack.shared_file_system.v2._proxy.Proxy(session, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None, *args, **kwargs)
- get_share_metadata(share_id)
Lists all metadata for a share.
- get_share_metadata_item(share_id, key)
Retrieves a specific metadata item from a share by its key.
- create_share_metadata(share_id, **metadata)
Creates share metadata as key-value pairs.
- update_share_metadata(share_id, metadata, replace=False)
Updates metadata of given share.
- delete_share_metadata(share_id, keys, ignore_missing=True)
Deletes a single metadata item on a share, idetified by its key.
- Parameters
share_id – The ID of the share
keys – The list of share metadata keys to be deleted
ignore_missing – Boolean indicating if missing keys should be ignored.
- Returns
None
- Return type
None