Migrate API reference into tree

The API Documentation team has requires [1] that
projects maintain their api-reference in-tree and
build it to the developer.openstack.org website.

This version of the API reference uses os-api-ref
and compiles API documentation close to that of
the OpenStack compute service (nova).

Co-Authored-By: Goutham Pacha Ravi <gouthamr@netapp.com>

[0] http://lists.openstack.org/pipermail/openstack-dev/2016-May/093765.html

Implements: bp move-manila-api-reference-in-tree
Change-Id: I67bb3354162d6e0e00fa2788edde864cc14920ee
This commit is contained in:
Daniel Gonzalez 2016-05-07 17:18:15 +02:00 committed by Goutham Pacha Ravi
parent cc2c74a362
commit 3e86e3deac
137 changed files with 9897 additions and 1 deletions

1
.gitignore vendored
View File

@ -34,6 +34,7 @@ tags
# Files created by Sphinx build
doc/build
.autogenerated
api-ref/build
# Files created by releasenotes build
releasenotes/build

View File

@ -0,0 +1,48 @@
.. -*- rst -*-
==================
Availability zones
==================
Describes availability zones that the Shared File Systems service is
configured with.
.. important::
For API versions 2.6 and prior, replace ``availability-zones`` in the URLs
with ``os-availability-zone``.
List availability zones
=======================
.. rest_method:: GET /v2/{tenant_id}/availability-zones
Lists all availability zones.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- availability_zones: availability_zones
- id: id_9
- name: name_6
- created_at: created_at_7
- updated_at: updated_at_4
Response example
----------------
.. literalinclude:: samples/availability-zones-list-response.json
:language: javascript

313
api-ref/source/conf.py Normal file
View File

@ -0,0 +1,313 @@
# -*- coding: utf-8 -*-
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# manila documentation build configuration file, created by
# sphinx-quickstart on Sat May 7 13:35:27 2016.
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.
import os
import subprocess
import sys
import warnings
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
sys.path.insert(0, os.path.abspath('../../'))
sys.path.insert(0, os.path.abspath('../'))
sys.path.insert(0, os.path.abspath('./'))
# -- General configuration ------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
# needs_sphinx = '1.0'
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
'os_api_ref',
'oslosphinx',
]
# Add any paths that contain templates here, relative to this directory.
# templates_path = ['_templates']
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
# source_suffix = ['.rst', '.md']
source_suffix = '.rst'
# The encoding of source files.
# source_encoding = 'utf-8-sig'
# The master toctree document.
master_doc = 'index'
# General information about the project.
project = u'Shared File Systems API Reference'
copyright = u'2010-present, OpenStack Foundation'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
from manila.version import version_info
# The full version, including alpha/beta/rc tags.
release = version_info.release_string()
# The short X.Y version.
version = version_info.version_string()
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
# language = None
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
# today = ''
# Else, today_fmt is used as the format for a strftime call.
# today_fmt = '%B %d, %Y'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This patterns also effect to html_static_path and html_extra_path
exclude_patterns = []
# The reST default role (used for this markup: `text`) to use for all
# documents.
# default_role = None
# If true, '()' will be appended to :func: etc. cross-reference text.
# add_function_parentheses = True
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
add_module_names = False
# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
show_authors = False
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
# A list of ignored prefixes for module index sorting.
# modindex_common_prefix = []
# If true, keep warnings as "system message" paragraphs in the built documents.
# keep_warnings = False
# If true, `todo` and `todoList` produce output, else they produce nothing.
todo_include_todos = False
# -- Options for HTML output ----------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
# html_theme = 'alabaster'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
# html_theme_options = {}
# Add any paths that contain custom themes here, relative to this directory.
# html_theme_path = []
# The name for this set of Sphinx documents.
# "<project> v<release> documentation" by default.
# html_title = u'Shared File Systems API Reference v2'
# A shorter title for the navigation bar. Default is the same as html_title.
# html_short_title = None
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
# html_logo = None
# The name of an image file (relative to this directory) to use as a favicon of
# the docs. This file should be a Windows icon file (.ico) being 16x16 or
# 32x32 pixels large.
# html_favicon = None
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
# html_static_path = ['_static']
# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
# html_extra_path = []
# If not None, a 'Last updated on:' timestamp is inserted at every page
# bottom, using the given strftime format.
# The empty string is equivalent to '%b %d, %Y'.
git_cmd = ["git", "log", "--pretty=format:'%ad, commit %h'", "--date=local",
"-n1"]
try:
html_last_updated_fmt = subprocess.Popen(
git_cmd, stdout=subprocess.PIPE).communicate()[0]
except Exception:
warnings.warn('Cannot get last updated time from git repository. '
'Not setting "html_last_updated_fmt".')
# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
# html_use_smartypants = True
# Custom sidebar templates, maps document names to template names.
# html_sidebars = {}
# Additional templates that should be rendered to pages, maps page names to
# template names.
# html_additional_pages = {}
# If false, no module index is generated.
# html_domain_indices = True
# If false, no index is generated.
# html_use_index = True
# If true, the index is split into individual pages for each letter.
# html_split_index = False
# If true, links to the reST sources are added to the pages.
# html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
# html_show_sphinx = True
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
# html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a <link> tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
# html_use_opensearch = ''
# This is the file name suffix for HTML files (e.g. ".xhtml").
# html_file_suffix = None
# Language to be used for generating the HTML full-text search index.
# Sphinx supports the following languages:
# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja'
# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr', 'zh'
# html_search_language = 'en'
# A dictionary with options for the search language support, empty by default.
# 'ja' uses this config value.
# 'zh' user can custom change `jieba` dictionary path.
# html_search_options = {'type': 'default'}
# The name of a javascript file (relative to the configuration directory) that
# implements a search results scorer. If empty, the default will be used.
# html_search_scorer = 'scorer.js'
# Output file base name for HTML help builder.
htmlhelp_basename = 'maniladoc'
# -- Options for LaTeX output ---------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
# 'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
# 'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
# 'preamble': '',
# Latex figure (float) alignment
# 'figure_align': 'htbp',
}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(master_doc, 'manila.tex',
u'OpenStack Shared File Systems API Documentation',
u'OpenStack Foundation', 'manual'),
]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
# latex_logo = None
# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
# latex_use_parts = False
# If true, show page references after internal links.
# latex_show_pagerefs = False
# If true, show URL addresses after external links.
# latex_show_urls = False
# Documents to append as an appendix to all manuals.
# latex_appendices = []
# If false, no module index is generated.
# latex_domain_indices = True
# -- Options for manual page output ---------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
(master_doc, 'manila', u'OpenStack Shared File Systems API Documentation',
u'Openstack Foundation', 1)
]
# If true, show URL addresses after external links.
# man_show_urls = False
# -- Options for Texinfo output -------------------------------------------
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
(master_doc, 'Manila', u'OpenStack Shared File Systems API Documentation',
u'OpenStack Foundation', 'Manila', 'OpenStack Shared File Systems',
'Miscellaneous'),
]
# Documents to append as an appendix to all manuals.
# texinfo_appendices = []
# If false, no module index is generated.
# texinfo_domain_indices = True
# How to display URL addresses: 'footnote', 'no', or 'inline'.
# texinfo_show_urls = 'footnote'
# If true, do not generate a @detailmenu in the "Top" node's menu.
# texinfo_no_detailmenu = False

View File

@ -0,0 +1,398 @@
.. -*- rst -*-
============================================
Consistency group snapshots (since API v2.4)
============================================
You can create snapshots of consistency groups. To create a
snapshot, you specify the ID of the consistency group that you want
to snapshot. After you create a consistency group snapshot, you can
create a consistency group from it.
A consistency group snapshot can have member shares. To add a
member share, include the ``consistency_group_id`` parameter in the
create share request. This ID must match the ID of the consistency
group from which the consistency group snapshot was created. Then,
when you use consistency group snapshots to restore data, you can
easily determine which shares belong to a consistency group.
As an administrator, you can also reset the state of a consistency
group snapshot and ``force-delete`` a consistency group snapshot in any
state. Use the ``policy.json`` file to grant permissions for these
actions to other roles.
.. note::
Consistency group snapshot APIs are part of an ``experimental`` feature
introduced in version 2.4. The APIs may change or be removed in further
versions of the Shared File Systems API. All experimental APIs
require the ``X-OpenStack-Manila-API-Experimental: True`` header to be
sent in the requests.
List consistency group snapshots
================================
.. rest_method:: GET /v2/{tenant_id}/cgsnapshots
Lists all consistency group snapshots.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- limit: limit_2
- offset: offset_2
- all_tenants: all_tenants_2
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- cgsnapshots: cgsnapshots
- cgsnapshot: cgsnapshot
- id: id_1
- name: name_8
- cgsnapshot_links: cgsnapshot_links
Response example
----------------
.. literalinclude:: samples/consistency-group-snapshot-list-response.json
:language: javascript
List consistency group snapshots with details
=============================================
.. rest_method:: GET /v2/{tenant_id}/cgsnapshots/detail
Lists all consistency group snapshots with details.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- limit: limit_2
- offset: offset_2
- all_tenants: all_tenants_2
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- cgsnapshots: cgsnapshots
- cgsnapshot: cgsnapshot
- id: id_1
- status: status
- links: links
- project_id: project_id_1
- consistency_group_id: consistency_group_id_4
- name: name_8
- description: description_7
- created_at: created_at_1
- cgsnapshot_links: cgsnapshot_links
Response example
----------------
.. literalinclude:: samples/consistency-group-snapshot-list-detail-response.json
:language: javascript
Show consistency group snapshot details
=======================================
.. rest_method:: GET /v2/{tenant_id}/cgsnapshots/{cgsnapshot_id}
Shows details for a consistency group snapshot.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- cgsnapshot_id: cgsnapshot_id
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- cgsnapshot: cgsnapshot
- id: id_1
- status: status
- links: links
- project_id: project_id_1
- consistency_group_id: consistency_group_id_4
- name: name_8
- description: description_7
- created_at: created_at_1
- cgsnapshot_links: cgsnapshot_links
Response example
----------------
.. literalinclude:: samples/consistency-group-snapshot-show-response.json
:language: javascript
List consistency group snapshot members
=======================================
.. rest_method:: GET /v2/{tenant_id}/cgsnapshots/{cgsnapshot_id}/members
Shows information about a consistency group snapshot member.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- cgsnapshot_id: cgsnapshot_id_1
- limit: limit_3
- offset: offset_3
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- cgsnapshot_members: cgsnapshot_members
- id: id_10
- share_id: share_id_1
- share_type_id: share_type_id_1
- created_at: created_at_8
- cgsnapshot_id: cgsnapshot_id_1
- share_protocol: share_protocol
- project_id: project_id_5
- size: size_1
- cgsnapshot_members_links: cgsnapshot_members_links
Response example
----------------
.. literalinclude:: samples/consistency-group-member-list-response.json
:language: javascript
Create consistency group snapshot
=================================
.. rest_method:: POST /v2/{tenant_id}/cgsnapshots
Creates a consistency group snapshot.
You can create a consistency group snapshot for a consistency group
in ``available`` state only.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- consistency_group_id: consistency_group_id
- name: name_1
- description: description_1
Request example
---------------
.. literalinclude:: samples/consistency-group-snapshot-create-request.json
:language: javascript
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- cgsnapshot: cgsnapshot
- id: id_1
- status: status
- links: links
- project_id: project_id_1
- consistency_group_id: consistency_group_id_4
- name: name_8
- description: description_7
- created_at: created_at_1
- cgsnapshot_links: cgsnapshot_links
Response example
----------------
.. literalinclude:: samples/consistency-group-snapshot-create-response.json
:language: javascript
Reset consistency group snapshot state
======================================
.. rest_method:: POST /v2/{tenant_id}/cgsnapshots/{cgsnapshot_id}/action
Administrator only. Explicitly updates the state of a consistency group
snapshot.
Administrators can use the ``policy.json`` file to permit other
roles to complete this action.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- cgsnapshot_id: cgsnapshot_id
- reset_status: reset_status
- os-reset_status: os-reset_status
- status: status
Request example
---------------
.. literalinclude:: samples/consistency-group-snapshot-reset_status-request.json
:language: javascript
Force-delete consistency group snapshot
=======================================
.. rest_method:: POST /v2/{tenant_id}/cgsnapshots/{cgsnapshot_id}/action
Administrator only. Force-deletes a consistency group snapshot.
Use the ``policy.json`` file to grant permissions for this action
to other roles.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- cgsnapshot_id: cgsnapshot_id_1
- force_delete: force_delete
Request example
---------------
.. literalinclude:: samples/consistency-group-snapshot-force_delete-request.json
:language: javascript
Update consistency group snapshot
=================================
.. rest_method:: PUT /v2/{tenant_id}/cgsnapshots/{cgsnapshot_id}
Updates a consistency group snapshot.
You can update only these attributes:
- ``name``, which changes the consistency group snapshot name.
- ``description``, which changes the consistency group snapshot
description.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- cgsnapshot_id: cgsnapshot_id_1
- name: name_1
- description: description_1
Request example
---------------
.. literalinclude:: samples/consistency-group-snapshot-update-request.json
:language: javascript
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- cgsnapshot: cgsnapshot
- id: id_1
- status: status
- links: links
- project_id: project_id_1
- consistency_group_id: consistency_group_id_4
- name: name_8
- description: description_7
- created_at: created_at_1
- cgsnapshot_links: cgsnapshot_links
Response example
----------------
.. literalinclude:: samples/consistency-group-snapshot-update-response.json
:language: javascript
Delete consistency group snapshot
=================================
.. rest_method:: DELETE /v2/{tenant_id}/cgsnapshots/{cgsnapshot_id}
Deletes a consistency group snapshot.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- cgsnapshot_id: cgsnapshot_id_1

View File

@ -0,0 +1,355 @@
.. -*- rst -*-
===================================
Consistency groups (since API v2.4)
===================================
Consistency groups enable you to create snapshots at the exact same
point in time from multiple file system shares. For example, a
database might place its tables, logs, and configuration on
separate shares. To restore this database from a previous point in
time, it makes sense to restore the logs, tables, and configuration
together from the exact same point in time.
As an administrator, you can also reset the state of a consistency
group and force-delete a consistency group in any state. Use the
``policy.json`` file to grant permissions for these actions to
other roles.
.. note::
Consistency groups APIs are part of an ``experimental`` feature introduced
in version 2.4. The APIs may change or be removed in further versions
of the Shared File Systems API. All experimental APIs require the
``X-OpenStack-Manila-API-Experimental: True`` header to be sent in the
requests.
List consistency groups
=======================
.. rest_method:: GET /v2/{tenant_id}/consistency-groups
Lists all consistency groups.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- all_tenants: all_tenants_1
- limit: limit_1
- offset: offset_1
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- consistency_groups: consistency_groups
- consistency_group: consistency_group
- id: id_2
- name: name_7
- link: link
Response example
----------------
.. literalinclude:: samples/consistency-group-list-response.json
:language: javascript
List consistency groups with details
====================================
.. rest_method:: GET /v2/{tenant_id}/consistency-groups/detail
Lists all consistency groups with details.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- all_tenants: all_tenants_1
- limit: limit_1
- offset: offset_1
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- consistency_groups: consistency_groups
- consistency_group: consistency_group
- id: id_2
- status: status
- links: link
- name: name_7
- description: description_6
- source_cgsnapshot_id: source_cgsnapshot_id
- created_at: created_at_1
- share_network_id: share_network_id
- host: host
- project_id: project_id_2
- share_server_id: share_server_id
- share_types: share_types_1
Response example
----------------
.. literalinclude:: samples/consistency-group-list-detail-response.json
:language: javascript
Show consistency group details
==============================
.. rest_method:: GET /v2/{tenant_id}/consistency-groups/{consistency_group_id}
Shows details for a consistency group.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- consistency_group_id: consistency_group_id_7
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- consistency_group: consistency_group
- id: id_2
- status: status
- links: link
- name: name_7
- description: description_6
- source_cgsnapshot_id: source_cgsnapshot_id
- created_at: created_at_1
- share_network_id: share_network_id
- host: host
- project_id: project_id_2
- share_server_id: share_server_id
- share_types: share_types_1
Response example
----------------
.. literalinclude:: samples/consistency-group-show-response.json
:language: javascript
Create consistency group
========================
.. rest_method:: POST /v2/{tenant_id}/consistency-groups
Creates a consistency group.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- share_types: share_types
- name: name_2
- description: description_2
- share_network_id: share_network_id_1
- source_cgsnapshot_id: source_cgsnapshot_id
Request example
---------------
.. literalinclude:: samples/consistency-group-create-request.json
:language: javascript
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- consistency_group: consistency_group
- id: id_2
- status: status
- links: link
- name: name_7
- description: description_6
- source_cgsnapshot_id: source_cgsnapshot_id
- created_at: created_at_1
- share_network_id: share_network_id
- host: host
- project_id: project_id_2
- share_server_id: share_server_id
- share_types: share_types_1
Response example
----------------
.. literalinclude:: samples/consistency-group-create-response.json
:language: javascript
Update consistency group
========================
.. rest_method:: PUT /v2/{tenant_id}/consistency-groups/{consistency_group_id}
Updates a consistency group.
You can update only these attributes:
- ``name``, which changes the consistency group name.
- ``description``, which changes the consistency group description.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- consistency_group_id: consistency_group_id_7
- name: name_2
- description: description_2
Request example
---------------
.. literalinclude:: samples/consistency-group-update-request.json
:language: javascript
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- consistency_group: consistency_group
- id: id_2
- status: status
- links: link
- name: name_7
- description: description_6
- source_cgsnapshot_id: source_cgsnapshot_id
- created_at: created_at_1
- share_network_id: share_network_id
- host: host
- project_id: project_id_2
- share_server_id: share_server_id
- share_types: share_types_1
Response example
----------------
.. literalinclude:: samples/consistency-group-update-response.json
:language: javascript
Reset consistency group state
=============================
.. rest_method:: POST /v2/{tenant_id}/consistency-groups/{consistency_group_id}/action
Administrator only. Explicitly updates the state of a consistency group.
Use the ``policy.json`` file to grant permissions for this action
to other roles.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- consistency_group_id: consistency_group_id_7
- reset_status: reset_status
- os-reset_status: os-reset_status
- status: status
Request example
---------------
.. literalinclude:: samples/consistency-group-reset_status-request.json
:language: javascript
Force-delete consistency group
==============================
.. rest_method:: POST /v2/{tenant_id}/consistency-groups/{consistency_group_id}/action
Administrator only. Force-deletes a consistency group.
Use the ``policy.json`` file to grant permissions for this action
to other roles.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- consistency_group_id: consistency_group_id_7
- os-force_delete: os-force_delete
- force_delete: force_delete
Request example
---------------
.. literalinclude:: samples/consistency-group-force_delete-request.json
:language: javascript
Delete consistency group
========================
.. rest_method:: DELETE /v2/{tenant_id}/consistency-groups/{consistency_group_id}
Deletes a consistency group.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- consistency_group_id: consistency_group_id_7

View File

@ -0,0 +1,42 @@
.. -*- rst -*-
==============
API extensions
==============
Lists available Shared File Systems API extensions.
List extensions
===============
.. rest_method:: GET /v2/{tenant_id}/extensions
Lists all extensions.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- name: name_10
- links: links_2
- description: description_8
- alias: alias
- updated: updated
Response example
----------------
.. literalinclude:: samples/extensions-list-response.json
:language: javascript

37
api-ref/source/index.rst Normal file
View File

@ -0,0 +1,37 @@
:tocdepth: 2
=======================
Shared File Systems API
=======================
.. rest_expand_all::
.. include:: versions.inc
.. include:: extensions.inc
.. include:: limits.inc
.. include:: shares.inc
.. include:: share-export-locations.inc
.. include:: share-metadata.inc
.. include:: share-actions.inc
.. include:: snapshots.inc
.. include:: share-networks.inc
.. include:: security-services.inc
.. include:: share-servers.inc
.. include:: share-instances.inc
.. include:: share-instance-export-locations.inc
.. include:: share-types.inc
.. include:: scheduler-stats.inc
.. include:: services.inc
.. include:: availability-zones.inc
.. include:: os-share-manage.inc
.. include:: quota-sets.inc
======================================
Shared File Systems API (EXPERIMENTAL)
======================================
.. rest_expand_all::
.. include:: share-migration.inc
.. include:: consistency-groups.inc
.. include:: consistency-group-snapshots.inc

77
api-ref/source/limits.inc Normal file
View File

@ -0,0 +1,77 @@
.. -*- rst -*-
======
Limits
======
Limits are the resource limitations that are allowed for each
tenant (project). An administrator can configure limits in the
``manila.conf`` file.
Users can query their rate and absolute limits. The absolute limits
contain information about:
- Total maximum share memory, in GBs.
- Number of share-networks.
- Number of share-snapshots.
- Number of shares.
- Shares and total used memory, in GBs.
- Snapshots and total used memory, in GBs.
Rate limits control the frequency at which users can issue specific
API requests. Administrators use rate limiting to configure limits
on the type and number of API calls that can be made in a specific
time interval. For example, a rate limit can control the number of
GET requests that can be processed during a one-minute period.
List share limits
=================
.. rest_method:: GET /v2/{tenant_id}/limits
Lists share limits.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- maxTotalShareGigabytes: maxTotalShareGigabytes
- maxTotalSnapshotGigabytes: maxTotalSnapshotGigabytes
- maxTotalShares: maxTotalShares
- maxTotalShareSnapshots: maxTotalShareSnapshots
- maxTotalShareNetworks: maxTotalShareNetworks
- totalSharesUsed: totalSharesUsed
- totalShareSnapshotsUsed: totalShareSnapshotsUsed
- totalShareNetworksUsed: totalShareNetworksUsed
- totalShareGigabytesUsed: totalShareGigabytesUsed
- totalSnapshotGigabytesUsed: totalSnapshotGigabytesUsed
- uri: uri
- regex: regex
- value: value
- verb: verb
- remaining: remaining
- unit: unit
- next-available: next-available
Response example
----------------
.. literalinclude:: samples/limits-response.json
:language: javascript

View File

@ -0,0 +1,126 @@
.. -*- rst -*-
==========================
Manage and unmanage shares
==========================
Configures Shared File Systems to manage or unmanage a share.
Manage share
============
.. rest_method:: POST /v2/{tenant_id}/os-share-manage
**Minimum Supported API Version**: 1.0, 2.0
**Last supported API Version**: 2.6
Use this API to bring a share under the management of the Shared File
Systems service.
Administrator only. Use the ``policy.json`` file to grant permissions for this
action to other roles.
This API was removed in API version 2.7; please see share actions for the
new version of the API to utilize this feature.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- share: share
- protocol: protocol
- name: name_5
- display_name: display_name
- share_type: share_type_2
- driver_options: driver_options
- export_path: export_path
- service_host: service_host
- is_public: is_public
- description: description_5
- display_description: display_description
Request example
---------------
.. literalinclude:: samples/share-manage-request.json
:language: javascript
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- share: share
- links: links
- availability_zone: availability_zone_1
- share_network_id: share_network_id
- export_locations: export_locations
- share_server_id: share_server_id
- snapshot_id: snapshot_id_3
- id: id_4
- size: size_2
- share_type: share_type_1
- share_type_name: share_type_name
- has_replicas: has_replicas
- replication_type: replication_type
- export_location: export_location
- consistency_group_id: consistency_group_id_5
- project_id: project_id_8
- metadata: metadata
- status: status_8
- description: description_5
- host: host_7
- is_public: is_public
- snapshot_support: snapshot_support
- name: name_5
- created_at: created_at_4
- share_proto: share_proto
- volume_type: volume_type
- source_cgsnapshot_member_id: source_cgsnapshot_member_id
Response example
----------------
.. literalinclude:: samples/share-manage-response.json
:language: javascript
Unmanage share
==============
.. rest_method:: POST /v2/{tenant_id}/os-share-unmanage/{share_id}/unmanage
**Minimum Supported API Version**: 1.0, 2.0
**Last supported API Version**: 2.6
Use this API to remove a share from the management of the Shared File
Systems service.
Administrator only. Use the ``policy.json`` file to grant permissions for this
action to other roles.
Share unmanage operation is not supported for shares that are created on top
of share servers (created with share networks). You should remove any
snapshots and share replicas before attempting to unmanage a share.
This API was removed in API version 2.7; please see share actions for the
new version of the API to utilize this feature.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403),
itemNotFound(404), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- share_id: share_id

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,173 @@
.. -*- rst -*-
==========
Quota sets
==========
Provides quotas management support.
.. important::
For API versions 2.6 and prior, replace ``quota-sets`` in the URLs with
``os-quota-sets``.
Show default quotas
===================
.. rest_method:: GET /v2/{tenant_id}/quota-sets/{tenant_id}/defaults
Shows default quotas for a tenant.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- tenant_id: tenant_id
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- quota_set: quota_set
- id: id_15
- gigabytes: gigabytes
- snapshots: snapshots
- shares: shares
- snapshot_gigabytes: snapshot_gigabytes
- share_networks: share_networks
Response example
----------------
.. literalinclude:: samples/quota-show-response.json
:language: javascript
Show quotas
===========
.. rest_method:: GET /v2/{tenant_id}/quota-sets/{tenant_id}?user_id={user_id}
Shows quotas for a tenant.
If you specify the optional ``user_id`` query parameter, you get
the quotas for this user in the tenant. If you omit this parameter,
you get the quotas for the project.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- tenant_id: tenant_id
- user_id: user_id_1
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- quota_set: quota_set
- id: id_15
- gigabytes: gigabytes
- snapshots: snapshots
- shares: shares
- snapshot_gigabytes: snapshot_gigabytes
- share_networks: share_networks
Response example
----------------
.. literalinclude:: samples/quota-show-response.json
:language: javascript
Update quotas
=============
.. rest_method:: PUT /v2/{tenant_id}/quota-sets/{tenant_id}?user_id={user_id}
Updates quotas for a tenant.
If you specify the optional ``user_id`` query parameter, you update
the quotas for this user in the tenant. If you omit this parameter,
you update the quotas for the project.
Normal response codes: 200
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- tenant_id: tenant_id
- user_id: user_id_1
- quota_set: quota_set
- force: force
- gigabytes: gigabytes_1
- snapshots: snapshots_1
- snapshot_gigabytes: snapshot_gigabytes_1
- shares: shares_1
- share_networks: share_networks_1
Request example
---------------
.. literalinclude:: samples/quota-update-request.json
:language: javascript
Response parameters
-------------------
.. rest_parameters:: parameters.yaml
- quota_set: quota_set
- id: id_15
- gigabytes: gigabytes
- snapshots: snapshots
- shares: shares
- snapshot_gigabytes: snapshot_gigabytes
- share_networks: share_networks
Response example
----------------
.. literalinclude:: samples/quota-update-response.json
:language: javascript
Delete quotas
=============
.. rest_method:: DELETE /v2/{tenant_id}/quota-sets/{tenant_id}?user_id={user_id}
Deletes quotas for a tenant. The quota reverts to the default quota.
If you specify the optional ``user_id`` query parameter, you delete
the quotas for this user in the tenant. If you omit this parameter,
you delete the quotas for the project.
Error response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id_1
- tenant_id: tenant_id
- user_id: user_id_1

View File

@ -0,0 +1,10 @@
{
"availability_zones": [
{
"name": "nova",
"created_at": "2015-09-18T09:50:55.000000",
"updated_at": null,
"id": "388c983d-258e-4a0e-b1ba-10da37d766db"
}
]
}

View File

@ -0,0 +1,10 @@
{
"consistency_group": {
"share_types": [
"d2ad4f9d-cae3-4660-b0b6-58c06b385203"
],
"name": "my-cg1",
"share_network_id": "d8ae6799-2567-4a89-aafb-fa4424350d2b",
"description": "my first consistency group"
}
}

View File

@ -0,0 +1,26 @@
{
"consistency_group": {
"status": "creating",
"description": "my first consistency group",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/6f519a48-3183-46cf-a32f-41815f813986",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/6f519a48-3183-46cf-a32f-41815f813986",
"rel": "bookmark"
}
],
"source_cgsnapshot_id": null,
"created_at": "2015-09-16T09:28:52.880949",
"share_network_id": "d8ae6799-2567-4a89-aafb-fa4424350d2b",
"host": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"share_types": [
"d2ad4f9d-cae3-4660-b0b6-58c06b385203"
],
"id": "6f519a48-3183-46cf-a32f-41815f813986",
"name": "my-cg1"
}
}

View File

@ -0,0 +1,3 @@
{
"force_delete": null
}

View File

@ -0,0 +1,32 @@
{
"consistency_groups": [
{
"id": "6f519a48-3183-46cf-a32f-41815f813986",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/6f519a48-3183-46cf-a32f-41815f813986",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/6f519a48-3183-46cf-a32f-41815f813986",
"rel": "bookmark"
}
],
"name": "my-cg1"
},
{
"id": "aed36625-a6d7-4681-ba59-c7ba3d18c148",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/aed36625-a6d7-4681-ba59-c7ba3d18c148",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/aed36625-a6d7-4681-ba59-c7ba3d18c148",
"rel": "bookmark"
}
],
"name": "my-cg2"
}
]
}

View File

@ -0,0 +1,32 @@
{
"consistency_groups": [
{
"id": "6f519a48-3183-46cf-a32f-41815f813986",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/6f519a48-3183-46cf-a32f-41815f813986",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/6f519a48-3183-46cf-a32f-41815f813986",
"rel": "bookmark"
}
],
"name": "my-cg1"
},
{
"id": "aed36625-a6d7-4681-ba59-c7ba3d18c148",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/aed36625-a6d7-4681-ba59-c7ba3d18c148",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/aed36625-a6d7-4681-ba59-c7ba3d18c148",
"rel": "bookmark"
}
],
"name": "my-cg2"
}
]
}

View File

@ -0,0 +1,24 @@
{
"cgsnapshot_members": [
{
"share_type_id": "be27425c-f807-4500-a056-d00721db45cf",
"share_id": "609e4924-f062-45e0-928d-7b739348c4d6",
"created_at": "2015-09-16T17:34:15.000000",
"cgsnapshot_id": "b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"share_protocol": "NFS",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "84098fde-40ec-4c96-a908-bc532c52b3af",
"size": 1
},
{
"share_type_id": "be27425c-f807-4500-a056-d00721db45cf",
"share_id": "c4a2ced4-2c9f-4ae1-adaa-6171833e64df",
"created_at": "2015-09-16T17:34:15.000000",
"cgsnapshot_id": "b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"share_protocol": "NFS",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "db492d38-dd3a-4d6b-a3b6-e65377990892",
"size": 1
}
]
}

View File

@ -0,0 +1,5 @@
{
"reset_status": {
"status": "available"
}
}

View File

@ -0,0 +1,27 @@
{
"consistency_group": {
"status": "available",
"description": "My first CG.",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/9397c191-8427-4661-a2e8-b23820dc01d4",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/9397c191-8427-4661-a2e8-b23820dc01d4",
"rel": "bookmark"
}
],
"source_cgsnapshot_id": null,
"created_at": "2015-09-16T16:50:31.000000",
"share_network_id": "f9b2e754-ac01-4466-86e1-5c569424754e",
"share_server_id": null,
"host": "manila2@generic1#GENERIC1",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"share_types": [
"be27425c-f807-4500-a056-d00721db45cf"
],
"id": "9397c191-8427-4661-a2e8-b23820dc01d4",
"name": "cg1"
}
}

View File

@ -0,0 +1,7 @@
{
"cgsnapshot": {
"consistency_group_id": "9397c191-8427-4661-a2e8-b23820dc01d4",
"name": "snapshot_cg1",
"description": "Snapshot of cg1"
}
}

View File

@ -0,0 +1,21 @@
{
"cgsnapshot": {
"status": "creating",
"name": "snapshot_cg1",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"rel": "bookmark"
}
],
"created_at": "2015-09-16T17:34:06.031997",
"consistency_group_id": "9397c191-8427-4661-a2e8-b23820dc01d4",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"description": "Snapshot of cg1"
}
}

View File

@ -0,0 +1,3 @@
{
"force_delete": null
}

View File

@ -0,0 +1,42 @@
{
"cgsnapshots": [
{
"status": "available",
"name": "snapshot_CG2",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"rel": "bookmark"
}
],
"created_at": "2015-09-16T17:37:40.000000",
"consistency_group_id": "2d5c2600-ae67-4dff-b13c-a1c20b335e8e",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"description": "Snapshot of CG2"
},
{
"status": "available",
"name": "snapshot_cg1",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"rel": "bookmark"
}
],
"created_at": "2015-09-16T17:34:15.000000",
"consistency_group_id": "9397c191-8427-4661-a2e8-b23820dc01d4",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"description": "Snapshot of cg1"
}
]
}

View File

@ -0,0 +1,32 @@
{
"cgsnapshots": [
{
"id": "7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"rel": "bookmark"
}
],
"name": "snapshot_CG2"
},
{
"id": "b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"rel": "bookmark"
}
],
"name": "snapshot_cg1"
}
]
}

View File

@ -0,0 +1,5 @@
{
"reset_status": {
"status": "error"
}
}

View File

@ -0,0 +1,21 @@
{
"cgsnapshot": {
"status": "available",
"name": "snapshot_cg1",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"rel": "bookmark"
}
],
"created_at": "2015-09-16T17:34:15.000000",
"consistency_group_id": "9397c191-8427-4661-a2e8-b23820dc01d4",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "b44c894d-4bec-47aa-b389-cc8c6f0044a5",
"description": "Snapshot of cg1"
}
}

View File

@ -0,0 +1,5 @@
{
"cgsnapshot": {
"description": "Changed description: there is a snapshot of CG2"
}
}

View File

@ -0,0 +1,21 @@
{
"cgsnapshot": {
"status": "available",
"name": "snapshot_CG2",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/cgsnapshot/7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"rel": "bookmark"
}
],
"created_at": "2015-09-16T17:37:40.000000",
"consistency_group_id": "2d5c2600-ae67-4dff-b13c-a1c20b335e8e",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "7e5c3ca7-d54b-438d-9a9c-c65ece6bc6c6",
"description": "Changed description: there is a snapshot of CG2"
}
}

View File

@ -0,0 +1,5 @@
{
"consistency_group": {
"description": "Edited description"
}
}

View File

@ -0,0 +1,26 @@
{
"consistency_group": {
"status": "error",
"description": "Edited description",
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/aed36625-a6d7-4681-ba59-c7ba3d18c148",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/consistency_groups/aed36625-a6d7-4681-ba59-c7ba3d18c148",
"rel": "bookmark"
}
],
"source_cgsnapshot_id": null,
"created_at": "2015-09-16T09:31:15.000000",
"share_network_id": "713df749-aac0-4a54-af52-10f6c991e80c",
"host": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"share_types": [
"be27425c-f807-4500-a056-d00721db45cf"
],
"id": "aed36625-a6d7-4681-ba59-c7ba3d18c148",
"name": "my-cg2"
}
}

View File

@ -0,0 +1,18 @@
{
"export_locations": [
{
"path": "10.254.0.3:/shares/share-e1c2d35e-fe67-4028-ad7a-45f668732b1d",
"share_instance_id": "e1c2d35e-fe67-4028-ad7a-45f668732b1d",
"is_admin_only": false,
"id": "b6bd76ce-12a2-42a9-a30a-8a43b503867d",
"preferred": false
},
{
"path": "10.0.0.3:/shares/share-e1c2d35e-fe67-4028-ad7a-45f668732b1d",
"share_instance_id": "e1c2d35e-fe67-4028-ad7a-45f668732b1d",
"is_admin_only": true,
"id": "6921e862-88bc-49a5-a2df-efeed9acd583",
"preferred": false
}
]
}

View File

@ -0,0 +1,11 @@
{
"export_location": {
"created_at": "2016-03-24T14:20:47.000000",
"updated_at": "2016-03-24T14:20:47.000000",
"preferred": false,
"is_admin_only": true,
"share_instance_id": "e1c2d35e-fe67-4028-ad7a-45f668732b1d",
"path": "10.0.0.3:/shares/share-e1c2d35e-fe67-4028-ad7a-45f668732b1d",
"id": "6921e862-88bc-49a5-a2df-efeed9acd583"
}
}

View File

@ -0,0 +1,102 @@
{
"extensions": [
{
"alias": "os-extended-quotas",
"updated": "2013-06-09T00:00:00+00:00",
"name": "ExtendedQuotas",
"links": [],
"description": "Extend quotas. Adds ability for admins to delete quota and optionally force the update Quota command."
},
{
"alias": "os-quota-sets",
"updated": "2011-08-08T00:00:00+00:00",
"name": "Quotas",
"links": [],
"description": "Quotas management support."
},
{
"alias": "os-quota-class-sets",
"updated": "2012-03-12T00:00:00+00:00",
"name": "QuotaClasses",
"links": [],
"description": "Quota classes management support."
},
{
"alias": "os-share-unmanage",
"updated": "2015-02-17T00:00:00+00:00",
"name": "ShareUnmanage",
"links": [],
"description": "Enable share unmanage operation."
},
{
"alias": "os-types-manage",
"updated": "2011-08-24T00:00:00+00:00",
"name": "TypesManage",
"links": [],
"description": "Types manage support."
},
{
"alias": "share-actions",
"updated": "2012-08-14T00:00:00+00:00",
"name": "ShareActions",
"links": [],
"description": "Enable share actions."
},
{
"alias": "os-availability-zone",
"updated": "2015-07-28T00:00:00+00:00",
"name": "AvailabilityZones",
"links": [],
"description": "Describe Availability Zones."
},
{
"alias": "os-user-quotas",
"updated": "2013-07-18T00:00:00+00:00",
"name": "UserQuotas",
"links": [],
"description": "Project user quota support."
},
{
"alias": "os-share-type-access",
"updated": "2015-03-02T00:00:00Z",
"name": "ShareTypeAccess",
"links": [],
"description": "share type access support."
},
{
"alias": "os-types-extra-specs",
"updated": "2011-08-24T00:00:00+00:00",
"name": "TypesExtraSpecs",
"links": [],
"description": "Type extra specs support."
},
{
"alias": "os-admin-actions",
"updated": "2015-08-03T00:00:00+00:00",
"name": "AdminActions",
"links": [],
"description": "Enable admin actions."
},
{
"alias": "os-used-limits",
"updated": "2014-03-27T00:00:00+00:00",
"name": "UsedLimits",
"links": [],
"description": "Provide data on limited resources that are being used."
},
{
"alias": "os-services",
"updated": "2012-10-28T00:00:00-00:00",
"name": "Services",
"links": [],
"description": "Services support."
},
{
"alias": "os-share-manage",
"updated": "2015-02-17T00:00:00+00:00",
"name": "ShareManage",
"links": [],
"description": "Allows existing share to be 'managed' by Manila."
}
]
}

View File

@ -0,0 +1,17 @@
{
"limits": {
"rate": [],
"absolute": {
"totalShareNetworksUsed": 0,
"maxTotalShareGigabytes": 1000,
"maxTotalShareNetworks": 10,
"totalSharesUsed": 0,
"totalShareGigabytesUsed": 0,
"totalShareSnapshotsUsed": 0,
"maxTotalShares": 50,
"totalSnapshotGigabytesUsed": 0,
"maxTotalSnapshotGigabytes": 1000,
"maxTotalShareSnapshots": 50
}
}
}

View File

@ -0,0 +1,27 @@
{
"pools": [
{
"host": "LONDON",
"capabilities": {
"qos": false,
"driver_version": "1.0",
"snapshot_support": true,
"timestamp": "2016-07-05T22:40:32.632330",
"share_backend_name": "GENERIC1",
"total_capacity_gb": "unknown",
"driver_handles_share_servers": true,
"consistency_group_support": "pool",
"server_pools_mapping": {},
"pools": null,
"vendor_name": "Open Source",
"reserved_percentage": 0,
"free_capacity_gb": "unknown",
"storage_protocol": "NFS_CIFS",
"replication_domain": null
},
"name": "openstack3@generic1#GENERIC1",
"pool": "GENERIC1",
"backend": "generic1"
}
]
}

View File

@ -0,0 +1,22 @@
{
"pools": [
{
"host": "manila2",
"name": "manila2@generic1#GENERIC1",
"pool": "GENERIC1",
"backend": "generic1"
},
{
"host": "manila2",
"name": "manila2@unmanage1#UNMANAGE1",
"pool": "UNMANAGE1",
"backend": "unmanage1"
},
{
"host": "manila2",
"name": "manila2@ams_backend#AMS_BACKEND",
"pool": "AMS_BACKEND",
"backend": "ams_backend"
}
]
}

View File

@ -0,0 +1,10 @@
{
"quota_set": {
"gigabytes": 1000,
"shares": 50,
"snapshot_gigabytes": 1000,
"snapshots": 50,
"id": "16e1ab15c35a457e9c2b2aa189f544e1",
"share_networks": 10
}
}

View File

@ -0,0 +1,7 @@
{
"quota_set": {
"snapshot_gigabytes": 999,
"snapshots": 49,
"share_networks": 9
}
}

View File

@ -0,0 +1,9 @@
{
"quota_set": {
"gigabytes": 1000,
"snapshot_gigabytes": 999,
"shares": 50,
"snapshots": 49,
"share_networks": 9
}
}

View File

@ -0,0 +1,10 @@
{
"security_service": {
"description": "Creating my first Security Service",
"dns_ip": "10.0.0.0/24",
"user": "demo",
"password": "***",
"type": "kerberos",
"name": "SecServ1"
}
}

View File

@ -0,0 +1,17 @@
{
"security_service": {
"status": "new",
"domain": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"name": "SecServ1",
"created_at": "2015-09-07T12:19:10.695211",
"updated_at": null,
"server": null,
"dns_ip": "10.0.0.0/24",
"user": "demo",
"password": "supersecret",
"type": "kerberos",
"id": "3c829734-0679-4c17-9637-801da48c0d5f",
"description": "Creating my first Security Service"
}
}

View File

@ -0,0 +1,17 @@
{
"security_service": {
"status": "new",
"domain": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"name": "SecServ1",
"created_at": "2015-09-07T12:19:10.000000",
"updated_at": null,
"server": null,
"dns_ip": "10.0.0.0/24",
"user": "demo",
"password": "supersecret",
"type": "kerberos",
"id": "3c829734-0679-4c17-9637-801da48c0d5f",
"description": "Creating my first Security Service"
}
}

View File

@ -0,0 +1,8 @@
{
"security_service": {
"domain": "my_domain",
"password": "***",
"user": "new_user",
"description": "Adding a description"
}
}

View File

@ -0,0 +1,17 @@
{
"security_service": {
"status": "new",
"domain": "my_domain",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"name": "SecServ1",
"created_at": "2015-09-07T12:19:10.000000",
"updated_at": "2015-09-07T12:47:21.858737",
"server": null,
"dns_ip": "10.0.0.0/24",
"user": "new_user",
"password": "pass",
"type": "kerberos",
"id": "3c829734-0679-4c17-9637-801da48c0d5f",
"description": "Adding a description"
}
}

View File

@ -0,0 +1,36 @@
{
"security_services": [
{
"status": "new",
"domain": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"name": "SecServ1",
"created_at": "2015-09-07T12:19:10.000000",
"description": "Creating my first Security Service",
"updated_at": null,
"server": null,
"dns_ip": "10.0.0.0/24",
"user": "demo",
"password": "supersecret",
"type": "kerberos",
"id": "3c829734-0679-4c17-9637-801da48c0d5f",
"share_networks": []
},
{
"status": "new",
"domain": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"name": "SecServ2",
"created_at": "2015-09-07T12:25:03.000000",
"description": "Creating my second Security Service",
"updated_at": null,
"server": null,
"dns_ip": "10.0.0.0/24",
"user": null,
"password": null,
"type": "ldap",
"id": "5a1d3a12-34a7-4087-8983-50e9ed03509a",
"share_networks": []
}
]
}

View File

@ -0,0 +1,40 @@
{
"security_services": [
{
"status": "new",
"domain": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"name": "SecServ1",
"created_at": "2015-09-07T12:19:10.000000",
"description": "Creating my first Security Service",
"updated_at": null,
"server": null,
"dns_ip": "10.0.0.0/24",
"user": "demo",
"password": "supersecret",
"type": "kerberos",
"id": "3c829734-0679-4c17-9637-801da48c0d5f",
"share_networks": [
"d8ae6799-2567-4a89-aafb-fa4424350d2b"
]
},
{
"status": "new",
"domain": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"name": "SecServ2",
"created_at": "2015-09-07T12:25:03.000000",
"description": "Creating my second Security Service",
"updated_at": null,
"server": null,
"dns_ip": "10.0.0.0/24",
"user": null,
"password": null,
"type": "ldap",
"id": "5a1d3a12-34a7-4087-8983-50e9ed03509a",
"share_networks": [
"d8ae6799-2567-4a89-aafb-fa4424350d2b"
]
}
]
}

View File

@ -0,0 +1,16 @@
{
"security_services": [
{
"status": "new",
"type": "kerberos",
"id": "3c829734-0679-4c17-9637-801da48c0d5f",
"name": "SecServ1"
},
{
"status": "new",
"type": "ldap",
"id": "5a1d3a12-34a7-4087-8983-50e9ed03509a",
"name": "SecServ2"
}
]
}

View File

@ -0,0 +1,4 @@
{
"binary": "manila-share",
"host": "openstackhost@generic#pool_0"
}

View File

@ -0,0 +1,5 @@
{
"disabled": true,
"binary": "manila-share",
"host": "openstackhost@generic#pool_0"
}

View File

@ -0,0 +1,4 @@
{
"binary": "manila-share",
"host": "openstackhost@generic#pool_0"
}

View File

@ -0,0 +1,5 @@
{
"disabled": false,
"binary": "manila-share",
"host": "openstackhost@generic#pool_0"
}

View File

@ -0,0 +1,22 @@
{
"services": [
{
"status": "enabled",
"binary": "manila-share",
"zone": "nova",
"host": "manila2@generic1",
"updated_at": "2015-09-07T13:03:57.000000",
"state": "up",
"id": 1
},
{
"status": "enabled",
"binary": "manila-scheduler",
"zone": "nova",
"host": "manila2",
"updated_at": "2015-09-07T13:03:57.000000",
"state": "up",
"id": 2
}
]
}

View File

@ -0,0 +1,13 @@
{
"services": [
{
"status": "enabled",
"binary": "manila-share",
"zone": "nova",
"host": "manila2@generic1",
"updated_at": "2015-09-07T13:14:27.000000",
"state": "up",
"id": 1
}
]
}

View File

@ -0,0 +1,5 @@
{
"extend": {
"new_size": 2
}
}

View File

@ -0,0 +1,3 @@
{
"force_delete": null
}

View File

@ -0,0 +1,7 @@
{
"allow_access": {
"access_level": "rw",
"access_type": "ip",
"access_to": "0.0.0.0/0"
}
}

View File

@ -0,0 +1,11 @@
{
"access": {
"share_id": "406ea93b-32e9-4907-a117-148b3945749f",
"created_at": "2015-09-07T09:14:48.000000",
"updated_at": null,
"access_type": "ip",
"access_to": "0.0.0.0/0",
"access_level": "rw",
"id": "a25b2df3-90bd-4add-afa6-5f0dbbd50452"
}
}

View File

@ -0,0 +1,3 @@
{
"access_list": null
}

View File

@ -0,0 +1,18 @@
{
"access_list": [
{
"access_level": "rw",
"state": "error",
"id": "507bf114-36f2-4f56-8cf4-857985ca87c1",
"access_type": "cert",
"access_to": "example.com"
},
{
"access_level": "rw",
"state": "active",
"id": "a25b2df3-90bd-4add-afa6-5f0dbbd50452",
"access_type": "ip",
"access_to": "0.0.0.0/0"
}
]
}

View File

@ -0,0 +1,5 @@
{
"reset_status": {
"status": "error"
}
}

View File

@ -0,0 +1,5 @@
{
"deny_access": {
"access_id": "a25b2df3-90bd-4add-afa6-5f0dbbd50452"
}
}

View File

@ -0,0 +1,5 @@
{
"shrink": {
"new_size": 1
}
}

View File

@ -0,0 +1,3 @@
{
"unmanage": null
}

View File

@ -0,0 +1,17 @@
{
"share": {
"description": "My custom share London",
"share_type": null,
"share_proto": "nfs",
"share_network_id": "713df749-aac0-4a54-af52-10f6c991e80c",
"name": "share_London",
"consistency_group_id": "9397c191-8427-4661-a2e8-b23820dc01d4",
"snapshot_id": null,
"is_public": true,
"size": 1,
"metadata": {
"project": "my_app",
"aim": "doc"
}
}
}

View File

@ -0,0 +1,44 @@
{
"share": {
"status": null,
"share_server_id": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"name": "share_London",
"share_type": "25747776-08e5-494f-ab40-a64b9d20d8f7",
"share_type_name": "default",
"availability_zone": null,
"created_at": "2015-09-18T10:25:24.533287",
"export_location": null,
"links": [
{
"href": "http://172.18.198.54:8786/v1/16e1ab15c35a457e9c2b2aa189f544e1/shares/011d21e2-fbc3-4e4a-9993-9ea223f73264",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/shares/011d21e2-fbc3-4e4a-9993-9ea223f73264",
"rel": "bookmark"
}
],
"share_network_id": null,
"export_locations": [],
"share_proto": "NFS",
"host": null,
"access_rules_status": "active",
"has_replicas": false,
"replication_type": null,
"task_state": null,
"snapshot_support": true,
"consistency_group_id": "9397c191-8427-4661-a2e8-b23820dc01d4",
"source_cgsnapshot_member_id": null,
"volume_type": "default",
"snapshot_id": null,
"is_public": true,
"metadata": {
"project": "my_app",
"aim": "doc"
},
"id": "011d21e2-fbc3-4e4a-9993-9ea223f73264",
"size": 1,
"description": "My custom share London"
}
}

View File

@ -0,0 +1,3 @@
{
"force_delete": null
}

View File

@ -0,0 +1,5 @@
{
"reset_status": {
"status": "available"
}
}

View File

@ -0,0 +1,34 @@
{
"share_instances": [
{
"status": "error",
"share_id": "406ea93b-32e9-4907-a117-148b3945749f",
"availability_zone": "nova",
"replica_state": null,
"created_at": "2015-09-07T08:41:20.000000",
"export_location": "10.254.0.3:/shares/share-081f7030-c54f-42f5-98ee-93a37393e0f2",
"share_network_id": "713df749-aac0-4a54-af52-10f6c991e80c",
"export_locations": [
"10.254.0.3:/shares/share-081f7030-c54f-42f5-98ee-93a37393e0f2"
],
"share_server_id": "ba11930a-bf1a-4aa7-bae4-a8dfbaa3cc73",
"host": "manila2@generic1#GENERIC1",
"id": "081f7030-c54f-42f5-98ee-93a37393e0f2"
},
{
"status": "available",
"share_id": "d94a8548-2079-4be0-b21c-0a887acd31ca",
"availability_zone": "nova",
"replica_state": null,
"created_at": "2015-09-07T08:51:34.000000",
"export_location": "10.254.0.3:/shares/share-75559a8b-c90c-42a7-bda2-edbe86acfb7b",
"share_network_id": "713df749-aac0-4a54-af52-10f6c991e80c",
"export_locations": [
"10.254.0.3:/shares/share-75559a8b-c90c-42a7-bda2-edbe86acfb7b"
],
"share_server_id": "ba11930a-bf1a-4aa7-bae4-a8dfbaa3cc73",
"host": "manila2@generic1#GENERIC1",
"id": "75559a8b-c90c-42a7-bda2-edbe86acfb7b"
}
]
}

View File

@ -0,0 +1,15 @@
{
"share": {
"protocol": "nfs",
"name": "accounting_p8787",
"share_type": "gold",
"driver_options": {
"opt1": "opt1",
"opt2": "opt2"
},
"export_path": "192.162.10.6:/shares/share-accounting_p8787",
"service_host": "manila2@openstackstor01#accountingpool",
"is_public": true,
"description": "Common storage for spreadsheets and presentations. Please contact John Accessman to be added to the users of this drive."
}
}

View File

@ -0,0 +1,40 @@
{
"share": {
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/shares/00137b40-ca06-4ae8-83a3-2c5989eebcce",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/shares/00137b40-ca06-4ae8-83a3-2c5989eebcce",
"rel": "bookmark"
}
],
"availability_zone": null,
"share_network_id": null,
"export_locations": [],
"share_server_id": null,
"snapshot_id": null,
"id": "00137b40-ca06-4ae8-83a3-2c5989eebcce",
"size": null,
"share_type": "14747856-08e5-494f-ab40-a64b9d20d8f7",
"share_type_name": "d",
"export_location": "10.254.0.5:/shares/share-42033c24-0261-424f-abda-4fef2f6dbfd5",
"consistency_group_id": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"metadata": {},
"status": "manage_starting",
"description": "Lets manage share.",
"host": "manila2@unmanage1#UNMANAGE1",
"access_rules_status": "active",
"has_replicas": false,
"replication_type": null,
"is_public": false,
"snapshot_support": true,
"name": "share_texas1",
"created_at": "2015-09-17T16:21:12.000000",
"share_proto": "NFS",
"volume_type": "d",
"source_cgsnapshot_member_id": null
}
}

View File

@ -0,0 +1,5 @@
{
"add_security_service": {
"security_service_id": "3c829734-0679-4c17-9637-801da48c0d5f"
}
}

View File

@ -0,0 +1,17 @@
{
"share_network": {
"name": "net2",
"segmentation_id": null,
"created_at": "2015-09-07T12:31:12.000000",
"neutron_subnet_id": null,
"updated_at": null,
"id": "d8ae6799-2567-4a89-aafb-fa4424350d2b",
"neutron_net_id": null,
"ip_version": null,
"nova_net_id": "998b42ee-2cee-4d36-8b95-67b5ca1f2109",
"cidr": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"network_type": null,
"description": null
}
}

View File

@ -0,0 +1,8 @@
{
"share_network": {
"neutron_net_id": "998b42ee-2cee-4d36-8b95-67b5ca1f2109",
"neutron_subnet_id": "53482b62-2c84-4a53-b6ab-30d9d9800d06",
"name": "my_network",
"description": "This is my share network"
}
}

View File

@ -0,0 +1,17 @@
{
"share_network": {
"name": "my_network",
"segmentation_id": null,
"created_at": "2015-09-07T14:37:00.583656",
"neutron_subnet_id": "53482b62-2c84-4a53-b6ab-30d9d9800d06",
"updated_at": null,
"id": "77eb3421-4549-4789-ac39-0d5185d68c29",
"neutron_net_id": "998b42ee-2cee-4d36-8b95-67b5ca1f2109",
"ip_version": null,
"nova_net_id": null,
"cidr": null,
"project_id": "e10a683c20da41248cfd5e1ab3d88c62",
"network_type": null,
"description": "This is my share network"
}
}

View File

@ -0,0 +1,5 @@
{
"remove_security_service": {
"security_service_id": "3c829734-0679-4c17-9637-801da48c0d5f"
}
}

View File

@ -0,0 +1,17 @@
{
"share_network": {
"name": "net2",
"segmentation_id": null,
"created_at": "2015-09-07T12:31:12.000000",
"neutron_subnet_id": null,
"updated_at": null,
"id": "d8ae6799-2567-4a89-aafb-fa4424350d2b",
"neutron_net_id": null,
"ip_version": null,
"nova_net_id": "998b42ee-2cee-4d36-8b95-67b5ca1f2109",
"cidr": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"network_type": null,
"description": null
}
}

View File

@ -0,0 +1,17 @@
{
"share_network": {
"name": "net_my1",
"segmentation_id": null,
"created_at": "2015-09-04T14:56:45.000000",
"neutron_subnet_id": "53482b62-2c84-4a53-b6ab-30d9d9800d06",
"updated_at": null,
"id": "7f950b52-6141-4a08-bbb5-bb7ffa3ea5fd",
"neutron_net_id": "998b42ee-2cee-4d36-8b95-67b5ca1f2109",
"ip_version": null,
"nova_net_id": null,
"cidr": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"network_type": null,
"description": "descr"
}
}

View File

@ -0,0 +1,5 @@
{
"share_network": {
"description": "i'm adding a description"
}
}

View File

@ -0,0 +1,17 @@
{
"share_network": {
"name": "net_my",
"segmentation_id": null,
"created_at": "2015-09-04T14:54:25.000000",
"neutron_subnet_id": "53482b62-2c84-4a53-b6ab-30d9d9800d06",
"updated_at": "2015-09-07T08:02:53.512184",
"id": "713df749-aac0-4a54-af52-10f6c991e80c",
"neutron_net_id": "998b42ee-2cee-4d36-8b95-67b5ca1f2109",
"ip_version": "4",
"nova_net_id": null,
"cidr": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"network_type": null,
"description": "i'm adding a description"
}
}

View File

@ -0,0 +1,49 @@
{
"share_networks": [
{
"name": "net_my1",
"segmentation_id": null,
"created_at": "2015-09-04T14:57:13.000000",
"neutron_subnet_id": "53482b62-2c84-4a53-b6ab-30d9d9800d06",
"updated_at": null,
"id": "32763294-e3d4-456a-998d-60047677c2fb",
"neutron_net_id": "998b42ee-2cee-4d36-8b95-67b5ca1f2109",
"ip_version": null,
"nova_net_id": null,
"cidr": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"network_type": null,
"description": "descr"
},
{
"name": "net_my",
"segmentation_id": null,
"created_at": "2015-09-04T14:54:25.000000",
"neutron_subnet_id": "53482b62-2c84-4a53-b6ab-30d9d9800d06",
"updated_at": null,
"id": "713df749-aac0-4a54-af52-10f6c991e80c",
"neutron_net_id": "998b42ee-2cee-4d36-8b95-67b5ca1f2109",
"ip_version": null,
"nova_net_id": null,
"cidr": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"network_type": null,
"description": "desecr"
},
{
"name": null,
"segmentation_id": null,
"created_at": "2015-09-04T14:51:41.000000",
"neutron_subnet_id": null,
"updated_at": null,
"id": "fa158a3d-6d9f-4187-9ca5-abbb82646eb2",
"neutron_net_id": null,
"ip_version": null,
"nova_net_id": null,
"cidr": null,
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"network_type": null,
"description": null
}
]
}

View File

@ -0,0 +1,16 @@
{
"share_networks": [
{
"id": "32763294-e3d4-456a-998d-60047677c2fb",
"name": "net_my1"
},
{
"id": "713df749-aac0-4a54-af52-10f6c991e80c",
"name": "net_my"
},
{
"id": "fa158a3d-6d9f-4187-9ca5-abbb82646eb2",
"name": null
}
]
}

View File

@ -0,0 +1,12 @@
{
"details": {
"username": "manila",
"router_id": "4b62ce91-56c5-45c1-b0ef-8cbbe5dd34f4",
"pk_path": "/opt/stack/.ssh/id_rsa",
"subnet_id": "16e99ad6-5191-461c-9f34-ac84a39c3adb",
"ip": "10.254.0.3",
"instance_id": "75f2f282-af65-49ba-a7b1-525705b1bf1a",
"public_address": "10.254.0.3",
"service_port_id": "8ff21760-961e-4b83-a032-03fd559bb1d3"
}
}

View File

@ -0,0 +1,22 @@
{
"share_server": {
"status": "active",
"backend_details": {
"username": "manila",
"router_id": "4b62ce91-56c5-45c1-b0ef-8cbbe5dd34f4",
"pk_path": "/opt/stack/.ssh/id_rsa",
"subnet_id": "16e99ad6-5191-461c-9f34-ac84a39c3adb",
"ip": "10.254.0.3",
"instance_id": "75f2f282-af65-49ba-a7b1-525705b1bf1a",
"public_address": "10.254.0.3",
"service_port_id": "8ff21760-961e-4b83-a032-03fd559bb1d3"
},
"created_at": "2015-09-07T08:37:19.000000",
"updated_at": "2015-09-07T08:52:15.000000",
"share_network_name": "net_my",
"host": "manila2@generic1",
"share_network_id": "713df749-aac0-4a54-af52-10f6c991e80c",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "ba11930a-bf1a-4aa7-bae4-a8dfbaa3cc73"
}
}

View File

@ -0,0 +1,13 @@
{
"share_servers": [
{
"status": "active",
"updated_at": "2015-09-07T08:52:15.000000",
"share_network_id": "713df749-aac0-4a54-af52-10f6c991e80c",
"host": "manila2@generic1",
"share_network_name": "net_my",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"id": "ba11930a-bf1a-4aa7-bae4-a8dfbaa3cc73"
}
]
}

View File

@ -0,0 +1,5 @@
{
"metadata": {
"key1": "value1"
}
}

View File

@ -0,0 +1,9 @@
{
"metadata": {
"aim": "changed_doc",
"project": "my_app",
"key1": "value1",
"new_metadata_key": "new_information",
"key": "value"
}
}

View File

@ -0,0 +1,18 @@
{
"share_instance": {
"status": "available",
"share_id": "d94a8548-2079-4be0-b21c-0a887acd31ca",
"availability_zone": "nova",
"replica_state": null,
"created_at": "2015-09-07T08:51:34.000000",
"export_location": "10.254.0.3:/shares/share-75559a8b-c90c-42a7-bda2-edbe86acfb7b",
"share_network_id": "713df749-aac0-4a54-af52-10f6c991e80c",
"export_locations": [
"10.254.0.3:/shares/share-75559a8b-c90c-42a7-bda2-edbe86acfb7b"
],
"share_server_id": "ba11930a-bf1a-4aa7-bae4-a8dfbaa3cc73",
"host": "manila2@generic1#GENERIC1",
"access_rules_status": "active",
"id": "75559a8b-c90c-42a7-bda2-edbe86acfb7b"
}
}

View File

@ -0,0 +1,6 @@
{
"metadata": {
"project": "my_app",
"aim": "doc"
}
}

View File

@ -0,0 +1,44 @@
{
"share": {
"links": [
{
"href": "http://172.18.198.54:8786/v2/16e1ab15c35a457e9c2b2aa189f544e1/shares/011d21e2-fbc3-4e4a-9993-9ea223f73264",
"rel": "self"
},
{
"href": "http://172.18.198.54:8786/16e1ab15c35a457e9c2b2aa189f544e1/shares/011d21e2-fbc3-4e4a-9993-9ea223f73264",
"rel": "bookmark"
}
],
"availability_zone": "nova",
"share_network_id": "713df749-aac0-4a54-af52-10f6c991e80c",
"export_locations": [],
"share_server_id": "e268f4aa-d571-43dd-9ab3-f49ad06ffaef",
"snapshot_id": null,
"id": "011d21e2-fbc3-4e4a-9993-9ea223f73264",
"size": 1,
"share_type": "25747776-08e5-494f-ab40-a64b9d20d8f7",
"share_type_name": "default",
"export_location": null,
"consistency_group_id": "9397c191-8427-4661-a2e8-b23820dc01d4",
"project_id": "16e1ab15c35a457e9c2b2aa189f544e1",
"metadata": {
"project": "my_app",
"aim": "doc"
},
"status": "available",
"description": "My custom share London",
"host": "manila2@generic1#GENERIC1",
"access_rules_status": "active",
"has_replicas": false,
"replication_type": null,
"task_state": null,
"is_public": true,
"snapshot_support": true,
"name": "share_London",
"created_at": "2015-09-18T10:25:24.000000",
"share_proto": "NFS",
"volume_type": "default",
"source_cgsnapshot_member_id": null
}
}

View File

@ -0,0 +1,10 @@
{
"volume_type": {
"os-share-type-access:is_public": true,
"extra_specs": {
"driver_handles_share_servers": true,
"snapshot_support": true
},
"name": "my_new_volume_type"
}
}

View File

@ -0,0 +1,26 @@
{
"volume_type": {
"os-share-type-access:is_public": true,
"required_extra_specs": {
"driver_handles_share_servers": true
},
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "True"
},
"name": "my_new_volume_type",
"id": "1d600d02-26a7-4b23-af3d-7d51860fe858"
},
"share_type": {
"os-share-type-access:is_public": true,
"required_extra_specs": {
"driver_handles_share_servers": true
},
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "True"
},
"name": "my_new_volume_type",
"id": "1d600d02-26a7-4b23-af3d-7d51860fe858"
}
}

View File

@ -0,0 +1,5 @@
{
"addProjectAccess": {
"project": "e1284adea3ee4d2482af5ed214f3ad90"
}
}

View File

@ -0,0 +1,5 @@
{
"removeProjectAccess": {
"project": "818a3f48dcd644909b3fa2e45a399a27"
}
}

View File

@ -0,0 +1,5 @@
{
"extra_specs": {
"my_key": "my_value"
}
}

View File

@ -0,0 +1,5 @@
{
"extra_specs": {
"my_key": "my_value"
}
}

View File

@ -0,0 +1,20 @@
{
"volume_type": {
"required_extra_specs": null,
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "True"
},
"name": "default",
"id": "be27425c-f807-4500-a056-d00721db45cf"
},
"share_type": {
"required_extra_specs": null,
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "True"
},
"name": "default",
"id": "be27425c-f807-4500-a056-d00721db45cf"
}
}

View File

@ -0,0 +1,6 @@
{
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "True"
}
}

View File

@ -0,0 +1,12 @@
{
"share_type_access": [
{
"share_type_id": "1732f284-401d-41d9-a494-425451e8b4b8",
"project_id": "818a3f48dcd644909b3fa2e45a399a27"
},
{
"share_type_id": "1732f284-401d-41d9-a494-425451e8b4b8",
"project_id": "e1284adea3ee4d2482af5ed214f3ad90"
}
]
}

View File

@ -0,0 +1,54 @@
{
"volume_types": [
{
"os-share-type-access:is_public": true,
"required_extra_specs": {
"driver_handles_share_servers": "True"
},
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "True"
},
"name": "default",
"id": "be27425c-f807-4500-a056-d00721db45cf"
},
{
"os-share-type-access:is_public": true,
"required_extra_specs": {
"driver_handles_share_servers": "false"
},
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "false"
},
"name": "d",
"id": "f015bebe-c38b-4c49-8832-00143b10253b"
}
],
"share_types": [
{
"os-share-type-access:is_public": true,
"required_extra_specs": {
"driver_handles_share_servers": "True"
},
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "True"
},
"name": "default",
"id": "be27425c-f807-4500-a056-d00721db45cf"
},
{
"os-share-type-access:is_public": true,
"required_extra_specs": {
"driver_handles_share_servers": "false"
},
"extra_specs": {
"snapshot_support": "True",
"driver_handles_share_servers": "false"
},
"name": "d",
"id": "f015bebe-c38b-4c49-8832-00143b10253b"
}
]
}

Some files were not shown because too many files have changed in this diff Show More