Add documentation for Glance Metadata Definitions Catalog - API

Change-Id: Ide07b75c846caa2a1c57060cc6c71b7859a78258
Closes-Bug: #1363615
This commit is contained in:
Lakshmi N Sampath 2014-09-12 14:36:06 -07:00 committed by Diane Fleming
parent e7040ded4f
commit bfefd9be36
45 changed files with 5362 additions and 1337 deletions

View File

@ -108,4 +108,126 @@
</wadl:resource>
</wadl:resources>
</section>
<section xml:id="os-metadef-resourcetype-v2">
<title>Metadata definition resource types</title>
<para>
Lists resource types. Also, creates, lists, and removes resource
type associations in a specified namespace. (Since API v2.0.)
</para>
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-resourcetype-v2.wadl#metadefs">
<wadl:method href="#listResourceTypes-v2"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-resourcetype-v2.wadl#resource_types">
<wadl:method href="#createResourceTypeAssoc-v2"/>
<wadl:method href="#listResourceTypeAssocs-v2"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-resourcetype-v2.wadl#name">
<wadl:method href="#deleteResourceTypeAssoc-v2"/>
</wadl:resource>
</wadl:resources>
</section>
<section xml:id="os-metadef-namespace-v2">
<title>Metadata definition namespaces</title>
<para>
Creates, lists, gets details for, updates, and deletes metadata
definition namespaces. Defines namespaces that can contain
property definitions, object definitions, and resource type
associations. (Since API v2.0.)
</para>
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-namespace-v2.wadl#namespaces">
<wadl:method href="#createNamespace-v2"/>
<wadl:method href="#listNamespaces-v2"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-namespace-v2.wadl#namespace">
<wadl:method href="#getNamespace-v2"/>
<wadl:method href="#updateNamespace-v2"/>
<wadl:method href="#deleteNamespace-v2"/>
</wadl:resource>
</wadl:resources>
</section>
<section xml:id="os-metadef-property-v2.wadl">
<title>Metadata definition properties</title>
<para>
Creates, lists, gets details for, updates, and deletes metadata
definition properties. (Since API v2.0.)
</para>
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-property-v2.wadl#properties">
<wadl:method href="#createProperty-v2"/>
<wadl:method href="#listProperties-v2"/>
</wadl:resource>
<wadl:resource href="../wadls/image-api/src/v2/os-metadef-property-v2.wadl#property_name">
<wadl:method href="#getProperty-v2"/>
<wadl:method href="#updateProperty-v2"/>
<wadl:method href="#deleteProperty-v2"/>
</wadl:resource>
</wadl:resources>
</section>
<section xml:id="os-metadef-object-v2">
<title>Metadata definition objects</title>
<para>
Creates, lists, gets details for, updates, and deletes metadata
definition objects. (Since API v2.0.)
</para>
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
<wadl:resource href="../wadls/image-api/src/v2/os-metadef-object-v2.wadl#objects">
<wadl:method href="#createObject-v2"/>
<wadl:method href="#listObjects-v2"/>
</wadl:resource>
<wadl:resource href="../wadls/image-api/src/v2/os-metadef-object-v2.wadl#object_name">
<wadl:method href="#getObject-v2"/>
<wadl:method href="#updateObject-v2"/>
<wadl:method href="#deleteObject-v2"/>
</wadl:resource>
</wadl:resources>
</section>
<section xml:id="os-metadef-schemas-v2">
<title>Metadata definition schemas</title>
<para>
Gets a JSON-schema document that represents a metadata definition
entity.
</para>
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-schemas-v2.wadl#namespace">
<wadl:method href="#getMetadefNamespaceSchema"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-schemas-v2.wadl#namespaces">
<wadl:method href="#getMetadefNamespacesSchema"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-schemas-v2.wadl#object">
<wadl:method href="#getMetadefObjectSchema"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-schemas-v2.wadl#objects">
<wadl:method href="#getMetadefObjectsSchema"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-schemas-v2.wadl#property">
<wadl:method href="#getMetadefPropertySchema"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-schemas-v2.wadl#properties">
<wadl:method href="#getMetadefPropertiesSchema"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-schemas-v2.wadl#resource_type">
<wadl:method href="#getMetadefResTypeAssocSchema"/>
</wadl:resource>
<wadl:resource
href="../wadls/image-api/src/v2/os-metadef-schemas-v2.wadl#resource_types">
<wadl:method href="#getMetadefResTypeAssocsSchema"/>
</wadl:resource>
</wadl:resources>
</section>
</chapter>

View File

@ -24,13 +24,13 @@
parameter value in a subsequent limited request.
</para>
</wadl:doc>
</param>
'>
</param>'>
<!-- Useful for describing APIs -->
<!ENTITY GET '<command xmlns="http://docbook.org/ns/docbook">GET</command>'>
<!ENTITY PUT '<command xmlns="http://docbook.org/ns/docbook">PUT</command>'>
<!ENTITY POST '<command xmlns="http://docbook.org/ns/docbook">POST</command>'>
<!ENTITY DELETE '<command xmlns="http://docbook.org/ns/docbook">DELETE</command>'>
<!ENTITY PATCH '<command xmlns="http://docbook.org/ns/docbook">PATCH</command>'>
<!-- Some useful entities borrowed from HTML -->
<!ENTITY ndash "&#x2013;">
<!ENTITY mdash "&#x2014;">

View File

@ -32,16 +32,12 @@
<representation mediaType="application/json"/>
</response>
'>
<!--
Faults on GET
-->
<!ENTITY getFaults
'
<!-- Faults on GET -->
<!ENTITY getFaults '
<response status="404" xmlns="http://wadl.dev.java.net/2009/02">
<representation mediaType="application/xml" element="imageapi:itemNotFound"/>
<representation mediaType="application/json"/>
</response>
'>
</response>'>
<!--
Faults on POST/PUT
-->
@ -64,22 +60,24 @@
style="query" required="false" type="imageapi:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Filter parameter. Image visibility. Valid values are
<code>public</code>, <code>private</code>, and
<code>shared</code>. Default is <code>public</code>,
<code>private</code>, and <code>shared</code> images
with <code>accepted</code> member status.</para>
<para>
Filter parameter. Image visibility. Valid values are
<code>public</code>, <code>private</code>, and <code>shared</code>.
Default is <code>public</code>, <code>private</code>, and
<code>shared</code> images with <code>accepted</code> member status.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="member_status"
style="query" required="false" type="imageapi:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Filter parameter. Only show images with the specified
member status. Valid values are <code>accepted</code>,
<code>pending</code>, <code>rejected</code>, and
<code>all</code>. Default is
<code>accepted</code>.</para>
<para>
Filter parameter. Only show images with the specified member status.
Valid values are <code>accepted</code>, <code>pending</code>,
<code>rejected</code>, and <code>all</code>. Default is
<code>accepted</code>.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="owner"
@ -88,7 +86,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Filter parameter. Shows images shared with me and the
specified owner, where the owner is a tenant
ID.</para>
ID.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="status"
@ -97,7 +96,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Filter parameter. The image status, such as queued,
saving, active, killed, deleted, and
pending_delete.</para>
pending_delete.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="size_min"
@ -105,7 +105,8 @@
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Filter parameter. Value of the minimum size of the image
in bytes.</para>
in bytes.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="size_max"
@ -113,7 +114,8 @@
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Filter parameter. Value of the maximum size of the image
in bytes.</para>
in bytes.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="sort_key"
@ -122,7 +124,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Sort key. All image attributes can be used as the
sort_key, except tags and link attributes. Default is
<code>created_at</code>.</para>
<code>created_at</code>.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="sort_dir"
@ -131,7 +134,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Sort direction. Valid values are <code>asc</code>
(ascending) and <code>desc</code> (descending). Default is
<code>desc</code>.</para>
<code>desc</code>.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="tag"
@ -139,7 +143,8 @@
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Image tag. For example,
<code>?tag="cirros"</code>.</para>
<code>?tag="cirros"</code>.
</para>
</wadl:doc>
</param>'>
<!ENTITY imagesParameter '
@ -173,7 +178,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The name of the image.</para>
<para>If this field has no value, its
value is <code>None</code>.</para>
value is <code>None</code>.
</para>
</wadl:doc>
</param>'>
<!ENTITY container_formatParameter '
@ -183,7 +189,8 @@
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>
The container format of image.</para>
The container format of image.
</para>
<para>If this field has no value, its
value is <code>None</code>.
</para>
@ -203,7 +210,8 @@
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>
The disk format of the image.</para>
The disk format of the image.
</para>
<para>If this field has no value, its
value is <code>None</code>.
</para>
@ -224,7 +232,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The minimum disk size in GB that is required to boot the image.</para>
<para>If this field has no value, its
value is <code>None</code>.</para>
value is <code>None</code>.
</para>
</wadl:doc>
</param>'>
<!ENTITY protectedParameter '
@ -250,7 +259,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The minimum amount of RAM in MB that is required to boot the image.</para>
<para>If this field has no value, its
value is <code>None</code>.</para>
value is <code>None</code>.
</para>
</wadl:doc>
</param>'>
<!ENTITY checksumParameter '
@ -259,9 +269,11 @@
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Hash of the image data used. The Image service uses this value for
verification.</para>
verification.
</para>
<para>If this field has no value, its
value is <code>None</code>.</para>
value is <code>None</code>.
</para>
</wadl:doc>
</param>'>
<!ENTITY ownerParameter '
@ -271,7 +283,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The ID of the owner, or tenant, of the image.</para>
<para>If this field has no value, its
value is <code>None</code>.</para>
value is <code>None</code>.
</para>
</wadl:doc>
</param>'>
<!ENTITY visibilityParameter '
@ -289,7 +302,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The virtual size of the image.</para>
<para>If this field has no value, its
value is <code>None</code>.</para>
value is <code>None</code>.
</para>
</wadl:doc>
</param>'>
<!ENTITY propertiesParameter '
@ -307,17 +321,20 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The size of the image data, in bytes.</para>
<para>If this field has no value, its
value is <code>None</code>.</para>
value is <code>None</code>.
</para>
</wadl:doc>
</param>
' >
</param>'>
<!ENTITY image_idParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="image_id"
style="template" type="csapi:uuid" required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN"
title="Image ID"><para>Image ID stored through the image API.
Typically a UUID.</para></wadl:doc>
title="Image ID">
<para>
Image ID stored through the image API. Typically a UUID.
</para>
</wadl:doc>
</param>'>
<!ENTITY tagsParameter '
<param xmlns="http://wadl.dev.java.net/2009/02"
@ -345,7 +362,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Format of the container. Valid values are ami,
ari, aki, bare, and ovf.</para>
ari, aki, bare, and ovf.
</para>
</wadl:doc>
</param>'>
<!ENTITY disk_formatRequestParameter '
@ -356,7 +374,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Format of the disk. If set, valid values are ami, ari, aki, vhd,
vmdk, raw, qcow2, vdi, and iso.</para>
vmdk, raw, qcow2, vdi, and iso.
</para>
</wadl:doc>
</param>'>
<!ENTITY min_diskRequestParameter '
@ -420,7 +439,8 @@
operations expressed in JSON notation. For example,
you must enclose strings in quotation marks, and
you do not enclose numeric values in quotation
marks.</para>
marks.
</para>
</wadl:doc>
</param>'>
<!ENTITY opParameter '
@ -432,11 +452,14 @@
xml:lang="EN">
<para>The operation. Valid values are:</para>
<para><code>add</code>: adds a new property or location in the
specified image.</para>
specified image.
</para>
<para><code>remove</code>: removes the specified image&apos;s
property or location.</para>
property or location.
</para>
<para><code>replace</code>: replaces the value of a specified
image&apos;s property or location.</para>
image&apos;s property or location.
</para>
</wadl:doc>
</param>'>
<!ENTITY urlParameter '
@ -447,7 +470,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>URL to access the image file kept in external
store.</para>
store.
</para>
</wadl:doc>
</param>'>
<!ENTITY metadataParameter '
@ -480,7 +504,8 @@
<para>URL to access the image file kept in external store. It
appears when you set the <code>show_multiple_locations</code> option
to <code>True</code> in the Image service&apos;s configuration
file.</para>
file.
</para>
</wadl:doc>
</param>'>
<!ENTITY direct_urlParameter '
@ -493,7 +518,8 @@
<para>URL to access the image file kept in external store. It
appears when you set the <code>show_multiple_locations</code> option
to <code>True</code> in the Image service&apos;s configuration
file.</para>
file.
</para>
</wadl:doc>
</param>'>
<!ENTITY images_schemaParameter '
@ -551,55 +577,314 @@
style="template" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN"
title="Members"><para>Image member ID. For example, the tenant
ID of the user with whom the image is being
shared.</para></wadl:doc>
title="Members">
<para>
Image member ID. For example, the tenant ID of the user that the image
is being shared with.
</para>
</wadl:doc>
</param>'>
<!ENTITY memberListParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="status"
required="true" style="plain" type="xsd:string">
<!ENTITY metadefNamespaceListReqParameters '
<param xmlns="http://wadl.dev.java.net/2009/02" name="visibility"
style="query" required="false" type="imageapi:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The status of this image member.</para></wadl:doc>
<para>Filter parameter. Namespace visibility. Valid values are
<code>public</code> and <code>private</code>.
Default is <code>public</code> and
<code>private</code>.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="created_at"
required="true" style="plain" type="xsd:datetime">
<param xmlns="http://wadl.dev.java.net/2009/02" name="resource_types"
style="query" required="false" type="xsd:int">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Date and time of image member
creation in the following format:
<code>YYYY-MM-DDThh:zz:ssZ</code>.</para></wadl:doc>
<para>Filter parameter. value as comma separated list
For example, sending a <code>resource_types</code> filter
of <code>OS::Glance::Image,OS::Nova::Flavor</code>, filters
the namespaces to include only namespaces that are associated
to the given resource types.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="updated_at"
required="true" style="plain" type="xsd:datetime">
<param xmlns="http://wadl.dev.java.net/2009/02" name="sort_key"
style="query" required="false" type="xsd:string" default="ALL">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Date and time of last modification of image
member in the following format:
<code>YYYY-MM-DDThh:zz:ssZ</code>.</para></wadl:doc>
<para>Sort key. Use attributes like <code>namespace</code>
for sorting. Default is <code>created_at</code>.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="image_id"
required="true" style="plain" type="csapi:uuid">
<param xmlns="http://wadl.dev.java.net/2009/02" name="sort_dir"
style="query" required="false" type="xsd:string" default="ALL">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>An identifier for the image.</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="member_id"
required="true" style="plain" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The image member ID. For example, the tenant ID of the user
with whom the image is being shared.</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="schema"
required="true" style="plain" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The URL for schema of the member.</para></wadl:doc>
<para>Sort direction. Valid values are <code>asc</code>
(ascending) and <code>desc</code> (descending). Default is
<code>desc</code>.
</para>
</wadl:doc>
</param>'>
<!ENTITY namespacesParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="namespaces"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>A <code>namespaces</code> object.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefNamespace_idParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="namespace"
style="template" type="csapi:uuid" required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN"
title="Namespace">
<para>Unique namespace.</para>
</wadl:doc>
</param>' >
<!ENTITY metadefNamespaceParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="namespace"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The <code>namespace</code> is unique across all users.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefNSDisplayNameParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="display_name"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>User friendly name which could be used in UI for displaying namespace name.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefNSDescParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="description"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Detailed description for the namespace.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefNSVisibilityParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="visibility"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Namespace visibility. Public or private. Default is private.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefNSProtectedParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="protected"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Namespace protection for deletion. True of False. Default is false.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertiesParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="properties"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Property definition(s) of the namespace.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefObjectsParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="objects"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Object definition(s) of the namespace.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefResTypeAssocsParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="resource_type_associations"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Resource type(s) which are associated with this namespace.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefResTypeNameParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="name"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Name of the <code>resource type</code>.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefResTypePrefixParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="prefix"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Specifies the prefix to use for the given resource type.
Any properties in the namespace should be prefixed with this
prefix when being applied to the specified resource type.
Must include prefix separator (e.g. a colon :).
</para>
</wadl:doc>
</param>'>
<!ENTITY metadefResTypePropTargetParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="properties_target"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Some resource types allow more than one key / value pair
per instance. For example, Cinder allows user and image
metadata on volumes. Only the image properties metadata
is evaluated by Nova (scheduling or drivers). This property
allows a namespace target to remove the ambiguity.
</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyNameIdParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="property_name"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The name of the property.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyListParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="properties"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>A properties object.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyNameParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="name"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The <code>name</code> of the property.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyTitleParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="title"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>The <code>title</code> of the property.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyTypeParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="type"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Property <code>type</code>.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyEnumParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="enum"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Enumeration of property values.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyItemsParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="items"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>specifies schema for the items in an array.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyDescParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="description"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Property description.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyMinParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="minimum"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Minimum allowed numerical value.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyMaxParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="maximum"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Maximum allowed numerical value.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyMinLengthParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="minLength"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Minimum allowed string length.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyMaxLengthParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="maxLength"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Maximum allowed string length.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyPatternParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="pattern"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>A regular expression (ECMA 262) that a string value
must match.
</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyMinItemsParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="minItems"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Minimum length of an array.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyMaxItemsParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="maxItems"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Maximum length of an array.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyUniqueItemsParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="uniqueItems"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>whether all the values in the array must be distinct.</para>
</wadl:doc>
</param>'>
<!ENTITY metadefPropertyAdditionalItemsParameter '
<param xmlns="http://wadl.dev.java.net/2009/02" name="additionalItems"
style="plain" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>describes extra items, if "tuple typing"
is being used. If the value of "items" is an array
("tuple typing"), and if the instance is longer than
the list of schemas in "items", then the additional
items are described by the schema in this property.
If this value is false, then the instance cannot be
longer than the list of schemas in "items". If this
value is "true", that is equivalent to the
empty schema (anything goes).
</para>
</wadl:doc>
</param>'>
<!-- Useful for describing APIs -->
<!ENTITY GET '<command xmlns="http://docbook.org/ns/docbook">GET</command>'>
<!ENTITY PUT '<command xmlns="http://docbook.org/ns/docbook">PUT</command>'>
<!ENTITY POST '<command xmlns="http://docbook.org/ns/docbook">POST</command>'>
<!ENTITY DELETE '<command xmlns="http://docbook.org/ns/docbook">DELETE</command>'>
<!ENTITY PATCH '<command xmlns="http://docbook.org/ns/docbook">PATCH</command>'>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- (C) 2012-2014 OpenStack Foundation, All Rights Reserved -->
<!-- (C) 2012-2015 OpenStack Foundation, All Rights Reserved -->
<!--*******************************************************-->
<!-- Import Common XML Entities -->
<!-- -->
@ -38,6 +38,7 @@
<resource id="Images" type="#ImageList" path="images">
<method href="#createImage-v2"/>
<resource path="{image_id}" id="image_id">
&image_idParameter;
<method href="#getImage-v2"/>
<method href="#updateImage-v2"/>
<method href="#deleteImage-v2"/>
@ -47,8 +48,8 @@
</resource>
<resource id="Tags" path="tags">
<resource path="{tag}" id="tag">
&tagParameter; <method
href="#addImageTag-v2"/>
&tagParameter;
<method href="#addImageTag-v2"/>
<method href="#deleteImageTag-v2"/>
</resource>
</resource>
@ -56,8 +57,8 @@
path="members">
<method href="#createImageMember-v2"/>
<resource path="{member_id}" id="member_id">
&member_idParameter; <method
href="#getImageMember-v2"/>
&member_idParameter;
<method href="#getImageMember-v2"/>
<method href="#deleteImageMember-v2"/>
<method href="#updateImageMember-v2"/>
</resource>
@ -82,7 +83,8 @@
<wadl:doc xml:lang="EN" title="List API versions"
xmlns="http://docbook.org/ns/docbook">
<para role="shortdesc">Lists information about all Image
service API versions.</para>
service API versions.
</para>
</wadl:doc>
<response status="200 300">
<representation mediaType="application/json">
@ -99,7 +101,8 @@
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="List images">
<para role="shortdesc">Lists public virtual machine (VM)
images. (Since Image API v2.0.)</para>
images. (Since Image API v2.0.)
</para>
<para>Returns a subset of the larger collection of images
and a link that you can use to get the next set of
images. You should always check for the presence of a
@ -111,35 +114,42 @@
<code>first</code> link to jump back to the first
page of the collection. If you prefer to paginate
through images manually, use the <code>limit</code>
and <code>marker</code> parameters.</para>
and <code>marker</code> parameters.
</para>
<para>The list operation accepts several types of query
parameters that let you filter the results of the
returned collection.</para>
returned collection.
</para>
<para>A client can provide direct comparison filters using
most image attributes, such as
<code>name=Ubuntu</code>,
<code>visibility=public</code>, and so on. A
client cannot filter on tags or anything defined as a
<code>link</code> in the json-schema, such as
self, file, or schema.</para>
self, file, or schema.
</para>
<para>You can use the <code>size_min</code> and
<code>size_max</code> query parameters to perform
greater-than and less-than filtering of images based
on their <code>size</code> attribute. The size is
measured in bytes and refers to the size of an image
when it is stored on disk.</para>
when it is stored on disk.
</para>
<para>For example, sending a <code>size_min</code> filter
of 1048576 and <code>size_max</code> of 4194304
filters the container to include only images that are
between 1 and 4 MB.</para>
between 1 and 4 MB.
</para>
<para>You can sort the results of this operation by using
the <code>sort_key</code> and <code>sort_dir</code>
parameters. The API uses the natural sorting of
whatever image attribute is provided as the
<code>sort_key</code>.</para>
<code>sort_key</code>.
</para>
<para>You can see a list of VM images which status is in
<code>active</code>, <code>queued</code>, or
<code>saving</code>.</para>
<code>saving</code>.
</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
@ -153,7 +163,8 @@
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/image-list-response.json"/>
</wadl:doc> &imagesParameter; &statusParameter;
</wadl:doc>
&imagesParameter; &statusParameter;
&nameParameter; &tagParameter; &container_formatParameter;
&created_atParameter; &disk_formatParameter;
&updated_atParameter; &min_diskParameter;
@ -173,19 +184,27 @@
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Create image">
<para role="shortdesc">Creates a virtual machine (VM)
image. (Since Image API v2.0.)</para>
image. (Since Image API v2.0.)
</para>
<para>Created with a <code>Location</code> header that
contains the newly-created URI for the image. Response
body represents the created image entity.</para>
body represents the created image entity.
</para>
<para>Synchronous Postconditions</para>
<itemizedlist>
<listitem><para>With correct permissions, you can see
<listitem>
<para>With correct permissions, you can see
the image status as <code>queued</code> through API
calls.</para></listitem>
<listitem><para>With correct permissions, you can see
calls.
</para>
</listitem>
<listitem>
<para>With correct permissions, you can see
the image status as <code>active</code> through API
calls if you created the image with
<code>Location</code> header.</para></listitem>
<code>Location</code> header.
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
@ -200,19 +219,25 @@
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>Name for the image. The
xml:lang="EN">
<para>Name for the image. The
name of an image is not unique to a Image
service node. The API cannot expect users
to know the names of images owned by
others.</para></wadl:doc>
others.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="id" style="plain" type="csapi:uuid"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>The image
ID.</para></wadl:doc>
xml:lang="EN">
<para>The image
ID.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="visibility" style="plain" type="xsd:string"
@ -221,7 +246,8 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Image visibility. Public or private.
Default is public.</para>
Default is public.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
@ -244,7 +270,8 @@
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/image-create-response.json"/>
</wadl:doc> &statusParameter; &container_formatParameter;
</wadl:doc>
&statusParameter; &container_formatParameter;
&min_ramParameter; &updated_atParameter;
&ownerParameter; &min_diskParameter;
&tagsParameter; &visibilityParameter;
@ -254,19 +281,6 @@
&propertiesParameter; &protectedParameter;
&locationParameter; &selfParameter;
&fileParameter; &image_schemaParameter;
<!--<param
xmlns="http://wadl.dev.java.net/2009/02"
name="location" style="plain" type="xsd:anyURI"
required="true"
path="/common:version/atom:link[@rel='self']/@href">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>The location for the image identified by
a URI.</para>
</wadl:doc>
<link resource_type="#createImage" rel="self"/>
</param>-->
</representation>
</response>
</method>
@ -275,58 +289,79 @@
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Update image">
<para role="shortdesc">Updates a specified image. (Since
Image API v2.0.)</para>
Image API v2.0.)
</para>
<para>Request body must conform to one of the following
media types:</para>
media types:
</para>
<itemizedlist spacing="compact">
<listitem>
<para>application/openstack-images-v2.0-json-patch</para>
</listitem>
<listitem>
<para>application/openstack-images-v2.1-json-patch
(Since Image API v2.2)</para>
(Since Image API v2.2)
</para>
</listitem>
</itemizedlist>
<para>You can also use the &PATCH; method to add or remove
image properties.</para>
image properties.
</para>
<para>
For information about the &PATCH; method and the available
media types, see <link
xlink:href="http://specs.openstack.org/openstack/glance-specs/specs/api/v2/http-patch-image-api-v2.html">Image
media types, see
<link
xlink:href="http://specs.openstack.org/openstack/glance-specs/specs/api/v2/http-patch-image-api-v2.html">
Image
API v2 HTTP PATCH media types</link>.
</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>When adding or replacing a new location
<listitem>
<para>When adding or replacing a new location
to the specified image, you must set the <code>disk_format</code>
and <code>container_format</code> parameters in the image.</para></listitem>
<listitem><para>When locations of the specified image
and <code>container_format</code> parameters in the image.
</para>
</listitem>
<listitem>
<para>When locations of the specified image
is replaced by replacing operation, the old location
must be set in the image on ahead.</para></listitem>
must be set in the image on ahead.
</para>
</listitem>
</itemizedlist>
<para>Synchronous Postconditions</para>
<itemizedlist>
<listitem><para>With correct permissions, you can see
<listitem>
<para>With correct permissions, you can see
the updated values of the image's attributes.
</para></listitem>
<listitem><para>With correct permissions, you can see
</para>
</listitem>
<listitem>
<para>With correct permissions, you can see
the image status as <code>active</code> through API calls
after adding a location to the image which had no
location.</para></listitem>
<listitem><para>
location.
</para>
</listitem>
<listitem>
<para>
With correct permissions, you can see the image status as
<code>queued</code> through API calls after removing all
locations from the image.
</para></listitem>
</para>
</listitem>
</itemizedlist>
<para>Troubleshooting</para>
<itemizedlist>
<listitem><para>
<listitem>
<para>
If you cannot update locations, your request might lack
some information. Ensure that you meet the preconditions
and run the request again. If the request fails again,
review your API request.
</para></listitem>
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
@ -334,7 +369,8 @@
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code href="samples/image-update-req.json"/>
</wadl:doc> &image_idParameter;
</wadl:doc>
&image_idParameter;
&pathParameter; &valueParameter; &opParameter;
&urlParameter; &metadataParameter;
</representation>
@ -345,7 +381,8 @@
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/image-update-response.json"/>
</wadl:doc> &statusParameter;
</wadl:doc>
&statusParameter;
&nameParameter; &tagParameter; &container_formatParameter;
&created_atParameter; &disk_formatParameter;
&updated_atParameter; &min_diskParameter;
@ -362,24 +399,24 @@
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get image details">
<para role="shortdesc">Gets details for a specified image.
(Since Image API v2.0.)</para>
(Since Image API v2.0.)
</para>
<para>Response body is a single image entity.</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>The specified image must exist.</para></listitem>
<listitem>
<para>The specified image must exist.</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
<representation mediaType="application/json">
&image_idParameter;</representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/image-details-response.json"/>
</wadl:doc> &statusParameter;
</wadl:doc>
&statusParameter;
&nameParameter; &tagParameter; &container_formatParameter;
&created_atParameter; &disk_formatParameter;
&updated_atParameter; &min_diskParameter;
@ -396,42 +433,56 @@
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Delete image">
<para role="shortdesc">Deletes a specified image. (Since
Image API v2.0.)</para>
Image API v2.0.)
</para>
<para>You cannot delete images with the 'protected'
attribute set to true (boolean).</para>
attribute set to true (boolean).
</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>You can delete an image in all status
except <code>deleted</code>.</para></listitem>
<listitem><para>You must first set the 'protected' attribute
<listitem>
<para>You can delete an image in all status
except <code>deleted</code>.
</para>
</listitem>
<listitem>
<para>You must first set the 'protected' attribute
to <code>false</code> (boolean) and then perform
the delete.</para></listitem>
the delete.
</para>
</listitem>
</itemizedlist>
<para>Synchronous Postconditions</para>
<itemizedlist>
<listitem><para>The response is empty and returns the
HTTP 204 status code.</para></listitem>
<listitem><para>The image is deleted in images index.
</para></listitem>
<listitem><para>The binary image data managed by OpenStack
<listitem>
<para>The response is empty and returns the
HTTP 204 status code.
</para>
</listitem>
<listitem>
<para>The image is deleted in images index.
</para>
</listitem>
<listitem>
<para>The binary image data managed by OpenStack
Image service is deleted from the storage node if the
deleted image stores image data in the node.</para></listitem>
deleted image stores image data in the node.
</para>
</listitem>
</itemizedlist>
<para>TroubleShooting</para>
<itemizedlist>
<listitem><para>
<listitem>
<para>
The response returns the HTTP 403 status code when the
<code>protected</code> attribute is set to
<code>true</code> even if you have correct permissions.
Ensure that you meet the preconditions and run the request
again. If the request fails again, review your API request.
</para></listitem>
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
<representation mediaType="application/json">
&image_idParameter; </representation>
</request>
<response status="204"/>
<response status="403"/>
</method>
@ -440,63 +491,88 @@
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Upload binary image data">
<para role="shortdesc">Uploads binary image data. (Since
Image API v2.0.)</para>
Image API v2.0.)
</para>
<para>Set the <code>Content-Type</code> request header to
<code>application/octet-stream</code>.</para>
<code>application/octet-stream</code>.
</para>
<para>Example call: <code>curl -i -X PUT -H "X-Auth-Token:
$token" -H "Content-Type:
application/octet-stream" -d
@/home/glance/ubuntu-12.10.qcow2
$image_url/v2/images/{image_id}/file</code></para>
$image_url/v2/images/{image_id}/file</code>
</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>The specified image must exist before you
store binary image data.</para></listitem>
<listitem><para>You must set disk_format and container_format
in the image before you store the data.</para></listitem>
<listitem><para>You can only store the data into a image which
status is <code>queued</code>.</para></listitem>
<listitem><para>The user must have enough image strage quota
remaining to store the data.</para></listitem>
<listitem><para>Size of the data must be less than OpenStack
Image service restricts.</para></listitem>
<listitem>
<para>The specified image must exist before you
store binary image data.
</para>
</listitem>
<listitem>
<para>You must set disk_format and container_format
in the image before you store the data.
</para>
</listitem>
<listitem>
<para>You can only store the data into a image which
status is <code>queued</code>.
</para>
</listitem>
<listitem>
<para>The user must have enough image strage quota
remaining to store the data.
</para>
</listitem>
<listitem>
<para>Size of the data must be less than OpenStack
Image service restricts.
</para>
</listitem>
</itemizedlist>
<para>Synchronous Postconditions</para>
<itemizedlist>
<listitem><para>With correct permissions, you can see the
<listitem>
<para>With correct permissions, you can see the
image status as <code>active</code> through API calls.
</para></listitem>
<listitem><para>With correct access, you can see the stored
</para>
</listitem>
<listitem>
<para>With correct access, you can see the stored
data in the storage system that OpenStack Image service
manages.</para></listitem>
manages.
</para>
</listitem>
</itemizedlist>
<para>Troubleshooting</para>
<itemizedlist>
<listitem><para>
<listitem>
<para>
If you cannot store the data, your request might lack
information or you exceeded your allotted quota. Ensure that you meet the
preconditions and run the request again. If the request fails again, review
your API request.
</para></listitem>
<listitem><para>The storage back ends for storing the data must have
</para>
</listitem>
<listitem>
<para>The storage back ends for storing the data must have
enough free storage space to match the size of the data.
</para></listitem>
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
<representation mediaType="application/json">
&image_idParameter; </representation>
</request>
<response status="204"/>
</method>
<method name="GET" id="getImageFile-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Download binary image data">
<para role="shortdesc">Downloads binary image data. (Since
Image API v2.0.)</para>
Image API v2.0.)
</para>
<para>Example call: <code>curl -i -X GET -H "X-Auth-Token:
$token"
$image_url/v2/images/{image_id}/file</code></para>
$image_url/v2/images/{image_id}/file</code>
</para>
<para>The response body contains the raw binary data that
represents the actual virtual disk. The
<code>Content-Type</code> header contains the
@ -504,52 +580,55 @@
<code>Content-MD5</code> header contains an MD5
checksum of the image data. Clients are encouraged to
verify the integrity of the image data they receive by
using this checksum.</para>
using this checksum.
</para>
<para></para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>The specified images must exist.</para></listitem>
<listitem>
<para>The specified images must exist.</para>
</listitem>
</itemizedlist>
<para>Synchronous Postconditions</para>
<itemizedlist>
<listitem><para>You can download the binary image data
<listitem>
<para>You can download the binary image data
in your machine if the specified image has image
data.</para></listitem>
<listitem><para>If image data exists, you receive the
HTTP 200 status code.</para></listitem>
<listitem><para>If no image data exists, you receive
the HTTP 204 status code.</para></listitem>
data.
</para>
</listitem>
<listitem>
<para>If image data exists, you receive the
HTTP 200 status code.
</para>
</listitem>
<listitem>
<para>If no image data exists, you receive
the HTTP 204 status code.
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
<representation mediaType="application/json"
>&image_idParameter; </representation>
</request>
<response status="200 204"/>
</method>
<!-- images/{image_id}/tags/{tag} methods -->
<method name="PUT" id="addImageTag-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Add image tag">
<para role="shortdesc">Adds a specified tag to a specified
image. (Since Image API v2.0.)</para>
<para role="shortdesc">
Adds a specified tag to a specified image. (Since Image API v2.0.)
</para>
</wadl:doc>
<request>
<representation mediaType="application/json"
>&image_idParameter; &tagParameter;</representation>
</request>
<response status="204"/>
</method>
<method name="DELETE" id="deleteImageTag-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Delete image tag">
<para role="shortdesc">Deletes a specified tag from a
specified image. (Since Image API v2.0.)</para>
<para role="shortdesc">
Deletes a specified tag from a specified image. (Since Image API
v2.0.)
</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
&image_idParameter; &tagParameter;</representation>
</request>
<response status="204"/>
</method>
<!-- images/{image_id}/members methods -->
@ -558,19 +637,21 @@
xmlns="http://docbook.org/ns/docbook">
<para role="shortdesc">Shows image member details.</para>
<para>Response body is a single image member entity.
(Since Image API 2.2.)</para>
(Since Image API 2.2.)
</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>The specified image must exist.
</para></listitem>
<listitem><para>You must be the owner or a member of
the specified image.</para></listitem>
<listitem>
<para>The specified image must exist.
</para>
</listitem>
<listitem>
<para>You must be the owner or a member of
the specified image.
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
<representation mediaType="application/json">
&image_idParameter; </representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
@ -578,7 +659,8 @@
<xsdxt:code
href="samples/image-member-details-response.json"
/>
</wadl:doc> &memberListParameter;
</wadl:doc>
<!-- &memberListParameter; -->
</representation>
</response>
</method>
@ -586,25 +668,29 @@
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="List image members">
<para role="shortdesc">Lists the tenants with whom this
image has been shared. (Since Image API v2.1.)</para>
image has been shared. (Since Image API v2.1.)
</para>
<para>If a user with whom this image is shared makes this
call, the member list contains only information for
that user.</para>
that user.
</para>
<para>If a user with whom this image has not been shared
makes this call, the call returns the HTTP 404 status
code.</para>
code.
</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>The specified image must exist.
</para></listitem>
<listitem><para>You must be the owner or a member of
the specified image.</para></listitem>
<listitem>
<para>The specified image must exist.
</para>
</listitem>
<listitem>
<para>You must be the owner or a member of
the specified image.
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
<representation mediaType="application/json"
>&image_idParameter; </representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
@ -612,7 +698,8 @@
<xsdxt:code
href="samples/image-members-list-response.json"
/>
</wadl:doc> &memberListParameter;
</wadl:doc>
<!-- &memberListParameter; -->
<param xmlns="http://wadl.dev.java.net/2009/02"
required="true" name="schema" style="plain"
type="xsd:string">
@ -620,7 +707,9 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>The URL for schema of the
members.</para></wadl:doc>
members.
</para>
</wadl:doc>
</param>
</representation>
</response>
@ -630,38 +719,53 @@
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Create image member">
<para role="shortdesc">Adds a specified tenant ID as an
image member. (Since Image API v2.1.)</para>
image member. (Since Image API v2.1.)
</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>The specified images must exist.
</para></listitem>
<listitem><para>You can only add a new member to an
<listitem>
<para>The specified images must exist.
</para>
</listitem>
<listitem>
<para>You can only add a new member to an
image which 'visibility' attribute is <code>private</code>.
</para></listitem>
<listitem><para>You must be the owner of the specified
image.</para></listitem>
</para>
</listitem>
<listitem>
<para>You must be the owner of the specified
image.
</para>
</listitem>
</itemizedlist>
<para>Synchronous Postconditions</para>
<itemizedlist>
<listitem><para>With correct permissions, you can see
<listitem>
<para>With correct permissions, you can see
the member status of the image as <code>pending</code>
through API calls.</para></listitem>
through API calls.
</para>
</listitem>
</itemizedlist>
<para>Troubleshooting</para>
<itemizedlist>
<listitem><para>
<listitem>
<para>
Even if you have correct permissions, if the
<code>visibility</code> attribute is set to <code>public</code>, the request
returns the HTTP 403 error code. Ensure that you meet the preconditions
and run the request again. If the request fails again,
review your API request.
</para></listitem>
<listitem><para>
</para>
</listitem>
<listitem>
<para>
If the specified member is already a member for the image,
the service returns the HTTP 409 Conflict error code. In
case you meant a different member, double-check that you
specified the correct member.
</para></listitem>
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
@ -671,8 +775,8 @@
<xsdxt:code
href="samples/image-member-create-request.json"
/>
</wadl:doc> &image_idParameter;
&member_idParameter; </representation>
</wadl:doc>
</representation>
</request>
<response status="200">
<representation mediaType="application/json">
@ -681,7 +785,8 @@
<xsdxt:code
href="samples/image-member-create-response.json"
/>
</wadl:doc> &memberListParameter;
</wadl:doc>
<!-- &memberListParameter; -->
</representation>
</response>
<response status="403" xmlns="http://wadl.dev.java.net/2009/02">
@ -700,22 +805,34 @@
title="Update image member">
<para role="shortdesc">Sets the specified status for the
specified member of the specified image. (Since Image
API v2.1.)</para>
API v2.1.)
</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>The specified images must exist.
</para></listitem>
<listitem><para>You must be a member of the
specified image.</para></listitem>
<listitem>
<para>The specified images must exist.
</para>
</listitem>
<listitem>
<para>You must be a member of the
specified image.
</para>
</listitem>
</itemizedlist>
<para>Synchronous Postconditions</para>
<itemizedlist>
<listitem><para>If you update the member status to
<listitem>
<para>If you update the member status to
<code>accepted</code> and have the correct permissions,
you see the image in list images responses.</para></listitem>
<listitem><para>With correct permissions, you can see
you see the image in list images responses.
</para>
</listitem>
<listitem>
<para>With correct permissions, you can see
the updated member status of the image through API
calls.</para></listitem>
calls.
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
@ -725,7 +842,7 @@
<xsdxt:code
href="samples/image-member-update-request.json"
/>
</wadl:doc> &image_idParameter;
</wadl:doc>
<param xmlns="http://wadl.dev.java.net/2009/02"
required="true" name="status" style="plain"
type="xsd:string">
@ -733,7 +850,9 @@
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>The status of this image
member.</para></wadl:doc>
member.
</para>
</wadl:doc>
</param>
</representation>
</request>
@ -744,7 +863,8 @@
<xsdxt:code
href="samples/image-member-update-response.json"
/>
</wadl:doc> &memberListParameter;
</wadl:doc>
<!-- &memberListParameter; -->
</representation>
</response>
</method>
@ -753,34 +873,41 @@
title="Delete image member">
<para role="shortdesc">Deletes a specified tenant ID from
the member list of the specified image. (Since Image
API v2.1.)</para>
API v2.1.)
</para>
<para>Preconditions</para>
<itemizedlist>
<listitem><para>The specified image must exist.
</para></listitem>
<listitem><para>You must be the owner of the specified
image.</para></listitem>
<listitem>
<para>The specified image must exist.
</para>
</listitem>
<listitem>
<para>You must be the owner of the specified
image.
</para>
</listitem>
</itemizedlist>
<para>Synchronous Postconditions</para>
<itemizedlist>
<listitem><para>The specified member is removed from
the image members.</para></listitem>
<listitem>
<para>The specified member is removed from
the image members.
</para>
</listitem>
</itemizedlist>
<para>Troubleshooting</para>
<itemizedlist>
<listitem><para>
<listitem>
<para>
Even if you have correct permissions, if you are not the
owner of the specified image, the request returns the HTTP
403 error code. Ensure that you meet the preconditions
and run the request again. If the request fails again,
review your API request.
</para></listitem>
</para>
</listitem>
</itemizedlist>
</wadl:doc>
<request>
<representation mediaType="application/json">
&image_idParameter;</representation>
</request>
<response status="204"/>
<response status="403" xmlns="http://wadl.dev.java.net/2009/02">
<representation mediaType="application/xml"

View File

@ -0,0 +1,357 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- (C) 2015 OpenStack Foundation, All Rights Reserved -->
<!--*******************************************************-->
<!-- Import Common XML Entities -->
<!-- -->
<!-- You can resolve the entities with xmllint -->
<!-- -->
<!-- xmllint -noent os-image-2.2.wadl -->
<!--*******************************************************-->
<!DOCTYPE application [
<!ENTITY % common SYSTEM "common.ent">
%common;
<!ENTITY % common_project SYSTEM "../../../common_project.ent">
%common_project;
]>
<application xmlns="http://wadl.dev.java.net/2009/02"
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
xmlns:db="http://docbook.org/ns/docbook"
xmlns:common="http://docs.openstack.org/common/api/v1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:imageapi="http://docs.openstack.org/image/api/v2"
xmlns:csapi="http://docs.openstack.org/image/api/v2">
<grammars>
<include href="xsd/api.xsd"/>
<include href="xsd/api-common.xsd"/>
</grammars>
<!--*******************************************************-->
<!-- All Resources -->
<!--*******************************************************-->
<resources base="https://glance.example.com/"
xml:id="os-metadef-namespace-v2">
<resource id="v2" path="//v2">
<resource id="metadefs" path="metadefs">
<resource id="namespaces" type="#NamespaceList" path="namespaces">
<method href="#createNamespace-v2"/>
<method href="#listNamespaces-v2"/>
<resource path="{namespace}" id="namespace">
<param xmlns="http://wadl.dev.java.net/2009/02"
name="namespace" style="template" type="xsd:string" required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
Unique namespace.
</para>
</wadl:doc>
</param>
<method href="#getNamespace-v2"/>
<method href="#updateNamespace-v2"/>
<method href="#deleteNamespace-v2"/>
</resource>
</resource>
</resource>
</resource>
</resources>
<!--*******************************************************-->
<!-- All Methods -->
<!--*******************************************************-->
<!-- Namespace methods -->
<method name="POST" id="createNamespace-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Create namespace">
<para role="shortdesc">
Creates a namespace.
</para>
<para>
The namespace is created with a <code>Location</code> header
that contains the newly-created URI for the namespace.
</para>
</wadl:doc>
<request>
<representation mediaType="application/json"
element="image">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code href="samples/metadef-namespace-create-req.json"/>
</wadl:doc>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="namespace" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
A namespace name that is unique across all users.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="display_name" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
User-friendly name that can be used in UI to
display the namespace name.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="description" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
Detailed description for the namespace.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="visibility" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
Namespace visibility. Valid value is public or
private. Default is private.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="protected" style="plain" type="xsd:boolean"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
Namespace protection for deletion. Valid value is
true or false. Default is false.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="properties" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
One or more property definitions in the namespace.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="objects" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
One or more object definitions in the namespace.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="resource_type_associations" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
One or more resource types that are associated
with this namespace.
</para>
</wadl:doc>
</param>
</representation>
</request>
<response status="201">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-namespace-create-response.json"/>
</wadl:doc>
&metadefNamespaceParameter; &metadefNSDisplayNameParameter;
&metadefNSDescParameter; &metadefNSVisibilityParameter;
&metadefNSProtectedParameter; &metadefPropertiesParameter;
&metadefObjectsParameter; &metadefResTypeAssocsParameter;
</representation>
</response>
</method>
<method name="GET" id="listNamespaces-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="List namespaces">
<para role="shortdesc">Lists public namespaces.</para>
<para>
Returns a subset in the larger collection of namespaces and a
link that you can use to get the next set of namespaces. Check
for the presence of a <code>next</code> link and use it as the
URI in a subsequent HTTP GET request. Follow this pattern
until a <code>next</code> link is no longer provided. The
<code>next</code> link preserves any query parameters that you
send in your initial request. You can use the
<code>first</code> link to return to the first page in the
collection. If you prefer to paginate through namespaces
manually, use the <code>limit</code> and <code>marker</code>
parameters.
</para>
<para>
The list operation accepts the <code>resource_types</code> and
<code>visibility</code> query parameters, which let you filter
the results in the returned collection.
</para>
<para>
To sort the results of this operation, use the
<code>sort_key</code> and <code>sort_dir</code> parameters.
The API uses the natural sorting order in the namespace
attribute that you provide as the <code>sort_key</code>
parameter.
</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
&limitMarkerReqParameter;
<param xmlns="http://wadl.dev.java.net/2009/02" name="visibility"
style="query" required="false" type="imageapi:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Filter parameter. Namespace visibility. Valid values are
<code>public</code> and <code>private</code>.
Default is <code>public</code>.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="resource_types"
style="query" required="false" type="xsd:int">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>
Filter parameter. Specify this value as comma-
separated list. For example, send the
<code>resource_types</code> filter of
<code>OS::Glance::Image,OS::Nova::Flavor</code> to
filter the namespaces by the specified resource
types.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="sort_key"
style="query" required="false" type="xsd:string" default="ALL">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Sort key. Use attributes like <code>namespace</code>
for sorting. Default is <code>created_at</code>.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02" name="sort_dir"
style="query" required="false" type="xsd:string" default="ALL">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Sort direction. Valid values are <code>asc</code>
(ascending) and <code>desc</code> (descending). Default is
<code>desc</code>.
</para>
</wadl:doc>
</param>
</representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-namespace-list-response.json"/>
</wadl:doc>
&namespacesParameter; &metadefNamespaceParameter;
&metadefNSDisplayNameParameter; &metadefNSDescParameter;
&metadefNSVisibilityParameter; &metadefNSProtectedParameter;
&metadefResTypeAssocsParameter;
</representation>
</response>
</method>
<method name="GET" id="getNamespace-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get namespaces details">
<para role="shortdesc">
Gets details for a specified namespace.
</para>
<para>
The response body shows a single namespace entity with all
details including properties and objects.
</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-namespace-details-response.json"/>
</wadl:doc>
</representation>
</response>
</method>
<method name="PUT" id="updateNamespace-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Update namespace">
<para role="shortdesc">Updates a specified namespace.</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code href="samples/metadef-namespace-update-req.json"/>
</wadl:doc>
&metadefNamespace_idParameter;
</representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-namespace-update-response.json"/>
</wadl:doc>
</representation>
</response>
</method>
<method name="DELETE" id="deleteNamespace-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Delete namespace">
<para role="shortdesc">
Deletes a specified namespace and its properties,
objects, and any resource type associations.
</para>
<para>
You cannot delete namespaces with the <code>protected</code>
attribute set to true (boolean); the response returns the HTTP
403 status code.
</para>
<para>
To delete a namespace, you must first make an update namespace
request to set the <code>protected</code> attribute to false
(boolean) on the namespace. Then, delete the namespace.
</para>
<para>
If the operation succeeds, the response returns the HTTP 204
status code.
</para>
<para>
If you try to remove a namespace with the
<code>protected</code> attribute set to true (boolean), the
operation fails and the response returns the HTTP 403 error
code.
</para>
</wadl:doc>
<response status="204"/>
<response status="403"/>
</method>
</application>

View File

@ -0,0 +1,273 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- (C) 2015 OpenStack Foundation, All Rights Reserved -->
<!--*******************************************************-->
<!-- Import Common XML Entities -->
<!-- -->
<!-- You can resolve the entities with xmllint -->
<!-- -->
<!-- xmllint -noent os-image-2.2.wadl -->
<!--*******************************************************-->
<!DOCTYPE application [
<!ENTITY % common SYSTEM "common.ent">
%common;
<!ENTITY % common_project SYSTEM "../../../common_project.ent">
%common_project;
]>
<application xmlns="http://wadl.dev.java.net/2009/02"
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
xmlns:db="http://docbook.org/ns/docbook"
xmlns:common="http://docs.openstack.org/common/api/v1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:imageapi="http://docs.openstack.org/image/api/v2"
xmlns:csapi="http://docs.openstack.org/image/api/v2">
<grammars>
<include href="xsd/api.xsd"/>
<include href="xsd/api-common.xsd"/>
</grammars>
<!--*******************************************************-->
<!-- All Resources -->
<!--*******************************************************-->
<resources base="https://glance.example.com/"
xml:id="os-metadef-object-v2">
<resource id="v2" path="//v2">
<resource id="metadefs" path="metadefs">
<resource id="namespaces" path="namespaces">
<resource path="{namespace}" id="namespace">
<resource id="objects" type="#ObjectList" path="objects">
<method href="#createObject-v2"/>
<method href="#listObjects-v2"/>
<resource path="{object_name}" id="object_name">
<method href="#getObject-v2"/>
<method href="#updateObject-v2"/>
<method href="#deleteObject-v2"/>
</resource>
</resource>
</resource>
</resource>
</resource>
</resource>
</resources>
<!--*******************************************************-->
<!-- All Methods -->
<!--*******************************************************-->
<!-- Property methods -->
<method name="POST" id="createObject-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Create object">
<para role="shortdesc">
Creates an object definition in a specified
namespace.
</para>
</wadl:doc>
<request>
<representation mediaType="application/json"
element="image">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code href="samples/metadef-object-create-req.json"/>
</wadl:doc>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="namespace" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>The namespace is unique across all
users.</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="display_name" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>User-friendly name to use in a UI to display the namespace name.
</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="description" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>Detailed description for the namespace.
</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="visibility" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Namespace visibility. Public or private.
Default is private.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="protected" style="plain" type="xsd:boolean"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Namespace protection for deletion. Valid value is true or false.
Default is false.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="properties" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Property definitions, if any, for the namespace.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="objects" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Object definitions, if any, for the namespace.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="resource_type_associations" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Resource types, if any, that are associated with this namespace</para>
</wadl:doc>
</param>
</representation>
</request>
<response status="201">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-object-create-response.json"/>
</wadl:doc> &metadefNamespaceParameter; &metadefNSDisplayNameParameter;
&metadefNSDescParameter; &metadefNSVisibilityParameter;
&metadefNSProtectedParameter; &metadefPropertiesParameter;
&metadefObjectsParameter; &metadefResTypeAssocsParameter;
</representation>
</response>
</method>
<method name="GET" id="listObjects-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="List objects">
<para role="shortdesc">Lists object definitions within
a namespace.</para>
<para>Returns a subset of the larger collection of namespaces
and a link that you can use to get the next set of
namespaces. You should always check for the presence of a
<code>next</code> link and use it as the URI in a
subsequent HTTP GET request. You should follow this
pattern until a <code>next</code> link is no longer
provided. The next link preserves any query parameters
that you send in your initial request. You can use the
<code>first</code> link to jump back to the first
page of the collection. If you prefer to paginate
through namespaces manually, use the <code>limit</code>
and <code>marker</code> parameters.</para>
<para>The list operation accepts <code>resource_types</code> and
<code>visibility</code> as query parameters that let you
filter the results of the returned collection.</para>
<para>For example, sending a <code>resource_types</code> filter
of <code>OS::Glance::Image,OS::Nova::Flavor</code> filters
the namespaces to include only namespaces that are associated
to the given resource types.</para>
<para>You can sort the results of this operation by using
the <code>sort_key</code> and <code>sort_dir</code>
parameters. The API uses the natural sorting of
whatever namespace attribute is provided as the
<code>sort_key</code>.</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
&metadefNamespaceListReqParameters; </representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-object-list-response.json"/>
</wadl:doc> &namespacesParameter; &metadefNamespaceParameter;
&metadefNSDisplayNameParameter; &metadefNSDescParameter;
&metadefNSVisibilityParameter; &metadefNSProtectedParameter;
&metadefResTypeAssocsParameter; </representation>
</response>
</method>
<method name="GET" id="getObject-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get object definition">
<para role="shortdesc">Gets definition for a specified object.
</para>
<para>Response body is a single object entity.</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
&metadefNamespace_idParameter;</representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-object-details-response.json"/>
</wadl:doc>
</representation>
</response>
</method>
<method name="PUT" xml:id="updateObject-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Update object definition">
<para role="shortdesc">
Updates a specified object definition.
</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code href="samples/metadef-object-update-req.json"/>
</wadl:doc> &metadefNamespace_idParameter; </representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-object-update-response.json"/>
</wadl:doc>
</representation>
</response>
</method>
<method name="DELETE" id="deleteObject-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Delete property definition">
<para role="shortdesc">
Deletes a specified object definition within a namespace.
</para>
<para>
You cannot delete objects in a namespace with the 'protected'
attribute set to true (boolean); the response returns
the HTTP 403 status code.
</para>
<para>
You must first set the <code>protected</code> attribute to
false (boolean) on the namespace and then perform the delete.
The response is empty and returns the HTTP 204 status code.
</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
&metadefNamespace_idParameter; </representation>
</request>
<response status="204"/>
<response status="403"/>
</method>
</application>

View File

@ -0,0 +1,517 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- (C) 2015 OpenStack Foundation, All Rights Reserved -->
<!--*******************************************************-->
<!-- Import Common XML Entities -->
<!-- -->
<!-- You can resolve the entities with xmllint -->
<!-- -->
<!-- xmllint -noent os-image-2.2.wadl -->
<!--*******************************************************-->
<!DOCTYPE application [
<!ENTITY % common SYSTEM "common.ent">
%common;
<!ENTITY % common_project SYSTEM "../../../common_project.ent">
%common_project;
]>
<application xmlns="http://wadl.dev.java.net/2009/02"
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
xmlns:db="http://docbook.org/ns/docbook"
xmlns:common="http://docs.openstack.org/common/api/v1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:imageapi="http://docs.openstack.org/image/api/v2"
xmlns:csapi="http://docs.openstack.org/image/api/v2">
<grammars>
<include href="xsd/api.xsd"/>
<include href="xsd/api-common.xsd"/>
</grammars>
<!--*******************************************************-->
<!-- All Resources -->
<!--*******************************************************-->
<resources base="https://glance.example.com/"
xml:id="os-metadef-property-v2">
<resource id="v2" path="//v2">
<resource id="metadefs" path="metadefs">
<resource id="namespaces" path="namespaces">
<resource path="{namespace}" id="namespace">
<resource id="properties" type="#PropertyList"
path="properties">
<method href="#createProperty-v2"/>
<method href="#listProperties-v2"/>
<resource path="{property_name}" id="property_name">
<method href="#getProperty-v2"/>
<method href="#updateProperty-v2"/>
<method href="#deleteProperty-v2"/>
</resource>
</resource>
</resource>
</resource>
</resource>
</resource>
</resources>
<!--*******************************************************-->
<!-- All Methods -->
<!--*******************************************************-->
<!-- Property methods -->
<method name="POST" id="createProperty-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Create property">
<para role="shortdesc">Creates a property definition within a
namespace. Schema is subset of JSON Property definition schema
</para>
</wadl:doc>
<request>
<representation mediaType="application/json"
element="image">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code href="samples/metadef-property-create-req.json"/>
</wadl:doc>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="name" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>Name of the property.
</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="title" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>Property title.
</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="type" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>Property type
</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="enum" style="plain" type="xsd:enum"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Enumeration of property values.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="items" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>specifies schema for the items in an
array.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="description" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Property description.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="minimum" style="plain" type="xsd:int"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Minimum allowed numerical value.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="maximum" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Maximum allowed numerical value.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="minLength" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Minimum allowed string length.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="maxLength" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Maximum allowed string length.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="pattern" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>A regular expression (ECMA 262) that
a string value must match.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="minItems" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Minimum length of an array.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="maxItems" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Maximum length of an array.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="uniqueItems" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>whether all the values in the array
must be distinct.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="additionalItems" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
If you use <i>tuple-typing</i>, describes extra
items. If the value of <code>items</code> is an
array and the instance is longer than the list of
schemas in <code>items</code>, the schema in this
property describes the additional items.
</para>
<para>
If this value is false, the instance cannot be
longer than the number of schemas listed in
<code>items</code>.
</para>
<para>
A value of true indicates an empty schema, or
anything goes.
</para>
</wadl:doc>
</param>
</representation>
</request>
<response status="201">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-property-create-response.json"/>
</wadl:doc> &metadefPropertyNameParameter;
&metadefPropertyTitleParameter; &metadefPropertyTypeParameter;
&metadefPropertyEnumParameter; &metadefPropertyItemsParameter;
&metadefPropertyDescParameter; &metadefPropertyMinParameter;
&metadefPropertyMaxParameter; &metadefPropertyMinLengthParameter;
&metadefPropertyMaxLengthParameter; &metadefPropertyPatternParameter;
&metadefPropertyMinItemsParameter; &metadefPropertyMaxItemsParameter;
&metadefPropertyUniqueItemsParameter;
&metadefPropertyAdditionalItemsParameter;
</representation>
</response>
</method>
<method name="GET" id="listProperties-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="List properties">
<para role="shortdesc">Lists property definitions within
a namespace.</para>
<para>Returns a list of property definitions in a
namespace.</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
&metadefNamespace_idParameter;</representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-property-list-response.json"/>
</wadl:doc> &metadefPropertyListParameter;
&metadefPropertyNameParameter;
&metadefPropertyTitleParameter; &metadefPropertyTypeParameter;
&metadefPropertyEnumParameter; &metadefPropertyItemsParameter;
&metadefPropertyDescParameter; &metadefPropertyMinParameter;
&metadefPropertyMaxParameter; &metadefPropertyMinLengthParameter;
&metadefPropertyMaxLengthParameter; &metadefPropertyPatternParameter;
&metadefPropertyMinItemsParameter; &metadefPropertyMaxItemsParameter;
&metadefPropertyUniqueItemsParameter;
&metadefPropertyAdditionalItemsParameter;
</representation>
</response>
</method>
<method name="GET" id="getProperty-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get property definition">
<para role="shortdesc">Gets definition for a specified property.
</para>
<para>Response body is a single property entity.</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
&metadefNamespace_idParameter;
&metadefPropertyNameIdParameter;
</representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-property-details-response.json"/>
</wadl:doc>
&metadefPropertyNameParameter;
&metadefPropertyTitleParameter; &metadefPropertyTypeParameter;
&metadefPropertyEnumParameter; &metadefPropertyItemsParameter;
&metadefPropertyDescParameter; &metadefPropertyMinParameter;
&metadefPropertyMaxParameter; &metadefPropertyMinLengthParameter;
&metadefPropertyMaxLengthParameter; &metadefPropertyPatternParameter;
&metadefPropertyMinItemsParameter; &metadefPropertyMaxItemsParameter;
&metadefPropertyUniqueItemsParameter;
&metadefPropertyAdditionalItemsParameter;
</representation>
</response>
</method>
<method name="PUT" id="updateProperty-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Update property definition">
<para role="shortdesc">Updates a specified property definition.
</para>
</wadl:doc>
<request>
<representation mediaType="application/json"
element="image">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code href="samples/metadef-property-create-req.json"/>
</wadl:doc>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="name" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>Name of the property.
</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="title" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>Property title.
</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="type" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN"><para>Property type
</para></wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="enum" style="plain" type="xsd:enum"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Enumeration of property values.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="items" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>specifies schema for the items in an
array.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="description" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Property description.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="minimum" style="plain" type="xsd:int"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Minimum allowed numerical value.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="maximum" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Maximum allowed numerical value.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="minLength" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Minimum allowed string length.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="maxLength" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Maximum allowed string length.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="pattern" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>A regular expression (ECMA 262) that
a string value must match.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="minItems" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Minimum length of an array.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="maxItems" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Maximum length of an array.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="uniqueItems" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>whether all the values in the array
must be distinct.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="additionalItems" style="plain" type="xsd:dict"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
If you use <i>tuple-typing</i>, describes extra
items. If the value of <code>items</code> is an
array and the instance is longer than the list of
schemas in <code>items</code>, the schema in this
property describes the additional items.
</para>
<para>
If this value is false, the instance cannot be
longer than the number of schemas listed in
<code>items</code>.
</para>
<para>
A value of true indicates an empty schema, or
anything goes.
</para>
</wadl:doc>
</param>
</representation>
</request>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-property-update-response.json"/>
</wadl:doc>
&metadefPropertyNameParameter;
&metadefPropertyTitleParameter; &metadefPropertyTypeParameter;
&metadefPropertyEnumParameter; &metadefPropertyItemsParameter;
&metadefPropertyDescParameter; &metadefPropertyMinParameter;
&metadefPropertyMaxParameter; &metadefPropertyMinLengthParameter;
&metadefPropertyMaxLengthParameter; &metadefPropertyPatternParameter;
&metadefPropertyMinItemsParameter; &metadefPropertyMaxItemsParameter;
&metadefPropertyUniqueItemsParameter;
&metadefPropertyAdditionalItemsParameter;
</representation>
</response>
</method>
<method name="DELETE" id="deleteProperty-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Remove property definition">
<para role="shortdesc">
Removes a specified property definition in a specified
namespace.
</para>
<para>
To remove a property, first make an update namespace request
to set the <code>protected</code> attribute to false (boolean)
on the namespace. Then, remove the property. If the operation
succeeds, the response returns the HTTP 204 status code.
</para>
<para>
If you try to remove a property in a namespace
with the <code>protected</code> attribute set to true
(boolean), the operation fails and the response returns the
HTTP 403 error code.
</para>
</wadl:doc>
<request>
<representation mediaType="application/json">
&metadefNamespace_idParameter;
&metadefPropertyNameIdParameter; </representation>
</request>
<response status="204"/>
<response status="403"/>
</method>
</application>

View File

@ -0,0 +1,205 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- (C) 2015 OpenStack Foundation, All Rights Reserved -->
<!--*******************************************************-->
<!-- Import Common XML Entities -->
<!-- -->
<!-- You can resolve the entities with xmllint -->
<!-- -->
<!-- xmllint -noent os-image-2.2.wadl -->
<!--*******************************************************-->
<!DOCTYPE application [
<!ENTITY % common SYSTEM "common.ent">
%common;
<!ENTITY % common_project SYSTEM "../../../common_project.ent">
%common_project;
]>
<application xmlns="http://wadl.dev.java.net/2009/02"
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
xmlns:db="http://docbook.org/ns/docbook"
xmlns:common="http://docs.openstack.org/common/api/v1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:imageapi="http://docs.openstack.org/image/api/v2"
xmlns:csapi="http://docs.openstack.org/image/api/v2">
<grammars>
<include href="xsd/api.xsd"/>
<include href="xsd/api-common.xsd"/>
</grammars>
<!--*******************************************************-->
<!-- All Resources -->
<!--*******************************************************-->
<resources base="https://glance.example.com/"
xml:id="os-metadef-resourcetype-v2">
<resource id="v2" path="//v2">
<resource id="metadefs" path="metadefs">
<method href="#listResourceTypes-v2"/>
<resource id="namespaces" path="namespaces">
<resource path="{namespace}" id="namespace">
<resource id="resource_types" type="#ResourceTypeList"
path="resource_types">
<param xmlns="http://wadl.dev.java.net/2009/02"
name="namespace" style="template" type="xsd:string" required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
Unique namespace.
</para>
</wadl:doc>
</param>
<method href="#createResourceTypeAssoc-v2"/>
<method href="#listResourceTypeAssocs-v2"/>
<resource path="{name}" id="name">
<param xmlns="http://wadl.dev.java.net/2009/02" name="name"
style="template" required="true" type="xsd:string">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02" xml:lang="EN">
<para>Name of the resource type.</para>
</wadl:doc>
</param>
<method href="#deleteResourceTypeAssoc-v2"/>
</resource>
</resource>
</resource>
</resource>
</resource>
</resource>
</resources>
<!--*******************************************************-->
<!-- All Methods -->
<!--*******************************************************-->
<!-- Property methods -->
<method name="POST" id="createResourceTypeAssoc-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Create resource type association">
<para role="shortdesc">Creates a resource type association
in a namespace.</para>
</wadl:doc>
<request>
<representation mediaType="application/json"
element="image">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-resource-type-assoc-create-req.json"/>
</wadl:doc>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="name" style="plain" type="xsd:string"
required="true">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>Name of the resource type.</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="prefix" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
Prefix for the specified resource type. If you
specify a prefix, you must use this value followed
by a prefix separator such as the colon
(<code>:</code>) character to prefix any
properties in the namespace that you want to apply
to the specified resource type.
</para>
</wadl:doc>
</param>
<param xmlns="http://wadl.dev.java.net/2009/02"
name="properties_target" style="plain" type="xsd:string"
required="false">
<wadl:doc xmlns="http://docbook.org/ns/docbook"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xml:lang="EN">
<para>
Some resource types allow more than one key and
value pair for each instance. For example, the
Image service allows both user and image metadata
on volumes. The <code>properties_target</code>
parameter enables a namespace target to remove the
ambiguity.
</para>
</wadl:doc>
</param>
</representation>
</request>
<response status="201">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-resource-type-assoc-create-response.json"/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="listResourceTypes-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="List resource types">
<para role="shortdesc">Lists resource types.</para>
<para>
Lists all possible resource types. You can assign metadata
definition namespaces to these resource types. See the
metadata definition resource types section.
</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-resource-type-list-response.json"/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="listResourceTypeAssocs-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="List resource type associations">
<para role="shortdesc">
Lists resource type associations in a specified namespace.
</para>
<para>
The response body lists resource type association entities.
</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/metadef-resource-type-assoc-list-response.json"/>
</wadl:doc>
</representation>
</response>
</method>
<method name="DELETE" id="deleteResourceTypeAssoc-v2">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Remove resource type association">
<para role="shortdesc">
Removes a specified resource type association in a specified
namespace.
</para>
<para>
To remove an association, first make an update namespace
request to set the <code>protected</code> attribute to false
(boolean) on the namespace. Then, remove the association. If
the operation succeeds, the response returns the HTTP 204
status code.
</para>
<para>
If you try to remove resource type associations in a namespace
with the <code>protected</code> attribute set to true
(boolean), the operation fails and the response returns the
HTTP 403 error code.
</para>
</wadl:doc>
<response status="204"/>
<response status="403"/>
</method>
</application>

View File

@ -0,0 +1,253 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- (C) 2015 OpenStack Foundation, All Rights Reserved -->
<!--*******************************************************-->
<!-- Import Common XML Entities -->
<!-- -->
<!-- You can resolve the entites with xmllint -->
<!-- -->
<!-- xmllint -noent os-metadef-schemas-2.2.wadl -->
<!--*******************************************************-->
<!DOCTYPE application [<!ENTITY % common SYSTEM "common.ent">
%common;]>
<application xmlns="http://wadl.dev.java.net/2009/02"
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
xmlns:db="http://docbook.org/ns/docbook"
xmlns:common="http://docs.openstack.org/common/api/v1.0"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:imageapi="http://docs.openstack.org/image/api/v2"
xmlns:csapi="http://docs.openstack.org/image/api/v2">
<grammars>
<include href="xsd/api.xsd"/>
<include href="xsd/api-common.xsd"/>
</grammars>
<!--*******************************************************-->
<!-- All Resources -->
<!--*******************************************************-->
<resources base="https://glance.example.com/"
xml:id="os-metadef-schemas-v2">
<resource id="v2" path="//v2">
<resource id="schemas" path="schemas">
<resource id="metadefs" path="metadefs">
<resource id="namespace" type="#SchemaList"
path="namespace">
<method href="#getMetadefNamespaceSchema"/>
</resource>
<resource id="namespaces" type="#SchemaList"
path="namespaces">
<method href="#getMetadefNamespacesSchema"/>
</resource>
<resource id="object" type="#SchemaList"
path="object">
<method href="#getMetadefObjectSchema"/>
</resource>
<resource id="objects" type="#SchemaList"
path="objects">
<method href="#getMetadefObjectsSchema"/>
</resource>
<resource id="property" type="#SchemaList"
path="property">
<method href="#getMetadefPropertySchema"/>
</resource>
<resource id="properties" type="#SchemaList"
path="properties">
<method href="#getMetadefPropertiesSchema"/>
</resource>
<resource id="resource_type" type="#SchemaList"
path="resource_type">
<method href="#getMetadefResTypeAssocSchema"/>
</resource>
<resource id="resource_types" type="#SchemaList"
path="resource_types">
<method href="#getMetadefResTypeAssocsSchema"/>
</resource>
</resource>
</resource>
</resource>
</resources>
<!--*******************************************************-->
<!-- All Methods -->
<!--*******************************************************-->
<method name="GET" id="getMetadefNamespaceSchema">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get Metadata definition namespace schema">
<para role="shortdesc">Gets a json-schema document that
represents a metadata definition namespace entity. (Since API v2.1.)</para>
<para>The following schema is solely an example. Consider
only the response to the API call as
authoritative.</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/schema-metadef-namespace-get-response.json"
/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="getMetadefNamespacesSchema">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get Metadata definition namespaces schema">
<para role="shortdesc">Gets a json-schema document that
represents a metadata definition namespace(s) entity. (Since API v2.1.)</para>
<para>A namespaces entity is a container of namespace
entities.</para>
<para>The following schema is solely an example. Consider
only the response to the API call as
authoritative.</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/schema-metadef-namespaces-get-response.json"
/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="getMetadefObjectSchema">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get Metadata definition object schema">
<para role="shortdesc">Gets a json-schema document that
represents a metadata definition object entity. (Since API v2.1.)</para>
<para>The following schema is solely an example. Consider
only the response to the API call as
authoritative.</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/schema-metadef-object-get-response.json"
/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="getMetadefObjectsSchema">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get Metadata definition objects schema">
<para role="shortdesc">Gets a json-schema document that
represents a metadata definition object(s) entity. (Since API v2.1.)</para>
<para>An objects entity is a container of object
entities.</para>
<para>The following schema is solely an example. Consider
only the response to the API call as
authoritative.</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/schema-metadef-objects-get-response.json"
/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="getMetadefPropertySchema">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get Metadata definition property schema">
<para role="shortdesc">Gets a json-schema document that
represents a metadata definition property entity. (Since API v2.1.)</para>
<para>The following schema is solely an example. Consider
only the response to the API call as
authoritative.</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/schema-metadef-property-get-response.json"
/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="getMetadefPropertiesSchema">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get Metadata definition properties schema">
<para role="shortdesc">Gets a json-schema document that
represents a metadata definition properties entity. (Since API v2.1.)</para>
<para>An properties entity is a container of property
entities.</para>
<para>The following schema is solely an example. Consider
only the response to the API call as
authoritative.</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/schema-metadef-properties-get-response.json"
/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="getMetadefResTypeAssocSchema">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get Metadata definition namespace resource type association schema">
<para role="shortdesc">
Gets a json-schema document that represents a metadata
definition namespace resource type association entity. (Since
API v2.1.)
</para>
<para>The following schema is solely an example. Consider
only the response to the API call as
authoritative.</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/schema-metadef-resource-type-association-get-response.json"
/>
</wadl:doc>
</representation>
</response>
</method>
<method name="GET" id="getMetadefResTypeAssocsSchema">
<wadl:doc xml:lang="EN" xmlns="http://docbook.org/ns/docbook"
title="Get Metadata definition namespace resource type association(s) schema">
<para role="shortdesc">
Gets a json-schema document that represents a metadata
definition namespace resource type association(s) entity.
(Since API v2.1.)
</para>
<para>A resource type associations entity is a container of resource type association
entities.</para>
<para>The following schema is solely an example. Consider
only the response to the API call as
authoritative.</para>
</wadl:doc>
<response status="200">
<representation mediaType="application/json">
<wadl:doc xml:lang="EN"
xmlns="http://docbook.org/ns/docbook">
<xsdxt:code
href="samples/schema-metadef-resource-type-associations-get-response.json"
/>
</wadl:doc>
</representation>
</response>
</method>
</application>

View File

@ -0,0 +1,39 @@
{
"description": "Choose capabilities that should be provided by the Compute Host. This provides the ability to fine tune the hardware specification required when a new vm is requested.",
"display_name": "Hypervisor Selection",
"namespace": "OS::Compute::Hypervisor",
"properties": {
"hypervisor_type": {
"description": "The hypervisor type.",
"enum": [
"xen",
"qemu",
"kvm",
"lxc",
"uml",
"vmware",
"hyperv"
],
"title": "Hypervisor Type",
"type": "string"
},
"vm_mode": {
"description": "The virtual machine mode.",
"enum": [
"hvm",
"xen",
"uml",
"exe"
],
"title": "VM Mode",
"type": "string"
}
},
"protected": true,
"resource_type_associations": [
{
"name": "OS::Glance::Image"
}
],
"visibility": "public"
}

View File

@ -0,0 +1,41 @@
{
"description": "Choose capabilities that should be provided by the Compute Host. This provides the ability to fine tune the hardware specification required when a new vm is requested.",
"display_name": "Hypervisor Selection",
"namespace": "OS::Compute::Hypervisor",
"properties": {
"hypervisor_type": {
"description": "The hypervisor type.",
"enum": [
"xen",
"qemu",
"kvm",
"lxc",
"uml",
"vmware",
"hyperv"
],
"title": "Hypervisor Type",
"type": "string"
},
"vm_mode": {
"description": "The virtual machine mode.",
"enum": [
"hvm",
"xen",
"uml",
"exe"
],
"title": "VM Mode",
"type": "string"
}
},
"protected": true,
"resource_type_associations": [
{
"name": "OS::Glance::Image"
}
],
"schema": "/v2/schemas/metadefs/namespace",
"self": "/v2/metadefs/namespaces/OS::Compute::Hypervisor",
"visibility": "public"
}

View File

@ -0,0 +1,103 @@
{
"created_at": "2014-08-28T17:13:06Z",
"description": "The libvirt compute driver options. These are properties specific to compute drivers. For a list of all hypervisors, see here: https://wiki.openstack.org/wiki/HypervisorSupportMatrix.",
"display_name": "libvirt Driver Options",
"namespace": "OS::Compute::Libvirt",
"owner": "admin",
"properties": {
"hw_disk_bus": {
"description": "Specifies the type of disk controller to attach disk devices to.",
"enum": [
"scsi",
"virtio",
"uml",
"xen",
"ide",
"usb"
],
"title": "Disk Bus",
"type": "string"
},
"hw_machine_type": {
"description": "Enables booting an ARM system using the specified machine type. By default, if an ARM image is used and its type is not specified, Compute uses vexpress-a15 (for ARMv7) or virt (for AArch64) machine types. Valid types can be viewed by using the virsh capabilities command (machine types are displayed in the machine tag).",
"title": "Machine Type",
"type": "string"
},
"hw_qemu_guest_agent": {
"description": "It is a daemon program running inside the domain which is supposed to help management applications with executing functions which need assistance of the guest OS. For example, freezing and thawing filesystems, entering suspend. However, guest agent (GA) is not bullet proof, and hostile guest OS can send spurious replies.",
"enum": [
"yes",
"no"
],
"title": "QEMU Guest Agent",
"type": "string"
},
"hw_rng_model": {
"default": "virtio",
"description": "Adds a random-number generator device to the image's instances. The cloud administrator can enable and control device behavior by configuring the instance's flavor. By default: The generator device is disabled. /dev/random is used as the default entropy source. To specify a physical HW RNG device, use the following option in the nova.conf file: rng_dev_path=/dev/hwrng",
"title": "Random Number Generator Device",
"type": "string"
},
"hw_scsi_model": {
"default": "virtio-scsi",
"description": "Enables the use of VirtIO SCSI (virtio-scsi) to provide block device access for compute instances; by default, instances use VirtIO Block (virtio-blk). VirtIO SCSI is a para-virtualized SCSI controller device that provides improved scalability and performance, and supports advanced SCSI hardware.",
"title": "SCSI Model",
"type": "string"
},
"hw_video_model": {
"description": "The video image driver used.",
"enum": [
"vga",
"cirrus",
"vmvga",
"xen",
"qxl"
],
"title": "Video Model",
"type": "string"
},
"hw_video_ram": {
"description": "Maximum RAM for the video image. Used only if a hw_video:ram_max_mb value has been set in the flavor's extra_specs and that value is higher than the value set in hw_video_ram.",
"title": "Max Video Ram",
"type": "integer"
},
"hw_vif_model": {
"description": "Specifies the model of virtual network interface device to use. The valid options depend on the configured hypervisor. KVM and QEMU: e1000, ne2k_pci, pcnet, rtl8139, and virtio. VMware: e1000, e1000e, VirtualE1000, VirtualE1000e, VirtualPCNet32, VirtualSriovEthernetCard, and VirtualVmxnet. Xen: e1000, netfront, ne2k_pci, pcnet, and rtl8139.",
"enum": [
"e1000",
"ne2k_pci",
"pcnet",
"rtl8139",
"virtio",
"e1000",
"e1000e",
"VirtualE1000",
"VirtualE1000e",
"VirtualPCNet32",
"VirtualSriovEthernetCard",
"VirtualVmxnet",
"netfront",
"ne2k_pci"
],
"title": "Virtual Network Interface",
"type": "string"
},
"os_command_line": {
"description": "The kernel command line to be used by the libvirt driver, instead of the default. For linux containers (LXC), the value is used as arguments for initialization. This key is valid only for Amazon kernel, ramdisk, or machine images (aki, ari, or ami).",
"title": "Kernel Command Line",
"type": "string"
}
},
"protected": true,
"resource_type_associations": [
{
"created_at": "2014-08-28T17:13:06Z",
"name": "OS::Glance::Image",
"updated_at": "2014-08-28T17:13:06Z"
}
],
"schema": "/v2/schemas/metadefs/namespace",
"self": "/v2/metadefs/namespaces/OS::Compute::Libvirt",
"updated_at": "2014-08-28T17:13:06Z",
"visibility": "public"
}

View File

@ -0,0 +1,96 @@
{
"first": "/v2/metadefs/namespaces?sort_key=created_at&sort_dir=asc",
"namespaces": [
{
"created_at": "2014-08-28T17:13:06Z",
"description": "The libvirt compute driver options. These are properties specific to compute drivers. For a list of all hypervisors, see here: https://wiki.openstack.org/wiki/HypervisorSupportMatrix.",
"display_name": "libvirt Driver Options",
"namespace": "OS::Compute::Libvirt",
"owner": "admin",
"protected": true,
"resource_type_associations": [
{
"created_at": "2014-08-28T17:13:06Z",
"name": "OS::Glance::Image",
"updated_at": "2014-08-28T17:13:06Z"
}
],
"schema": "/v2/schemas/metadefs/namespace",
"self": "/v2/metadefs/namespaces/OS::Compute::Libvirt",
"updated_at": "2014-08-28T17:13:06Z",
"visibility": "public"
},
{
"created_at": "2014-08-28T17:13:06Z",
"description": "Compute drivers may enable quotas on CPUs available to a VM, disk tuning, bandwidth I/O, and instance VIF traffic control. See: http://docs.openstack.org/admin-guide-cloud/content/customize-flavors.html",
"display_name": "Flavor Quota",
"namespace": "OS::Compute::Quota",
"owner": "admin",
"protected": true,
"resource_type_associations": [
{
"created_at": "2014-08-28T17:13:06Z",
"name": "OS::Nova::Flavor",
"updated_at": "2014-08-28T17:13:06Z"
}
],
"schema": "/v2/schemas/metadefs/namespace",
"self": "/v2/metadefs/namespaces/OS::Compute::Quota",
"updated_at": "2014-08-28T17:13:06Z",
"visibility": "public"
},
{
"created_at": "2014-08-28T17:13:06Z",
"description": "Trusted compute pools with Intel\u00ae Trusted Execution Technology (Intel\u00ae TXT) support IT compliance by protecting virtualized data centers - private, public, and hybrid clouds against attacks toward hypervisor and BIOS, firmware, and other pre-launch software components.",
"display_name": "Trusted Compute Pools (Intel\u00ae TXT)",
"namespace": "OS::Compute::Trust",
"owner": "admin",
"protected": true,
"resource_type_associations": [
{
"created_at": "2014-08-28T17:13:06Z",
"name": "OS::Nova::Flavor",
"updated_at": "2014-08-28T17:13:06Z"
}
],
"schema": "/v2/schemas/metadefs/namespace",
"self": "/v2/metadefs/namespaces/OS::Compute::Trust",
"updated_at": "2014-08-28T17:13:06Z",
"visibility": "public"
},
{
"created_at": "2014-08-28T17:13:06Z",
"description": "This provides the preferred socket/core/thread counts for the virtual CPU instance exposed to guests. This enables the ability to avoid hitting limitations on vCPU topologies that OS vendors place on their products. See also: http://git.openstack.org/cgit/openstack/nova-specs/tree/specs/juno/virt-driver-vcpu-topology.rst",
"display_name": "Virtual CPU Topology",
"namespace": "OS::Compute::VirtCPUTopology",
"owner": "admin",
"protected": true,
"resource_type_associations": [
{
"created_at": "2014-08-28T17:13:06Z",
"name": "OS::Glance::Image",
"prefix": "hw_",
"updated_at": "2014-08-28T17:13:06Z"
},
{
"created_at": "2014-08-28T17:13:06Z",
"name": "OS::Cinder::Volume",
"prefix": "hw_",
"properties_target": "image",
"updated_at": "2014-08-28T17:13:06Z"
},
{
"created_at": "2014-08-28T17:13:06Z",
"name": "OS::Nova::Flavor",
"prefix": "hw:",
"updated_at": "2014-08-28T17:13:06Z"
}
],
"schema": "/v2/schemas/metadefs/namespace",
"self": "/v2/metadefs/namespaces/OS::Compute::VirtCPUTopology",
"updated_at": "2014-08-28T17:13:06Z",
"visibility": "public"
}
],
"schema": "/v2/schemas/metadefs/namespaces"
}

View File

@ -0,0 +1,7 @@
{
"description": "Choose capabilities that should be provided by the Compute Host. This provides the ability to fine tune the hardware specification required when a new vm is requested.",
"display_name": "Hypervisor Selection",
"namespace": "OS::Compute::Hypervisor",
"protected": false,
"visibility": "public"
}

View File

@ -0,0 +1,12 @@
{
"created_at": "2014-09-19T13:31:37Z",
"description": "Choose capabilities that should be provided by the Compute Host. This provides the ability to fine tune the harware specification required when a new vm is requested.",
"display_name": "Hypervisor Selection",
"namespace": "OS::Compute::Hypervisor",
"owner": "7ec22942411e427692e8a3436be1031a",
"protected": false,
"schema": "/v2/schemas/metadefs/namespace",
"self": "/v2/metadefs/namespaces/OS::Compute::Hypervisor",
"updated_at": "2014-09-19T13:31:37Z",
"visibility": "public"
}

View File

@ -0,0 +1,24 @@
{
"description": "You can configure the CPU limits with control parameters.",
"name": "CPU Limits",
"properties": {
"quota:cpu_period": {
"description": "Specifies the enforcement interval (unit: microseconds) for QEMU and LXC hypervisors. Within a period, each VCPU of the domain is not allowed to consume more than the quota worth of runtime. The value should be in range [1000, 1000000]. A period with value 0 means no value.",
"maximum": 1000000,
"minimum": 1000,
"title": "Quota: CPU Period",
"type": "integer"
},
"quota:cpu_quota": {
"description": "Specifies the maximum allowed bandwidth (unit: microseconds). A domain with a negative-value quota indicates that the domain has infinite bandwidth, which means that it is not bandwidth controlled. The value should be in range [1000, 18446744073709551] or less than 0. A quota with value 0 means no value. You can use this feature to ensure that all vCPUs run at the same speed.",
"title": "Quota: CPU Quota",
"type": "integer"
},
"quota:cpu_shares": {
"description": "Specifies the proportional weighted share for the domain. If this element is omitted, the service defaults to the OS provided defaults. There is no unit for the value; it is a relative measure based on the setting of other VMs. For example, a VM configured with value 2048 gets twice as much CPU time as a VM configured with value 1024.",
"title": "Quota: CPU Shares",
"type": "integer"
}
},
"required": []
}

View File

@ -0,0 +1,28 @@
{
"created_at": "2014-09-19T18:20:56Z",
"description": "You can configure the CPU limits with control parameters.",
"name": "CPU Limits",
"properties": {
"quota:cpu_period": {
"description": "Specifies the enforcement interval (unit: microseconds) for QEMU and LXC hypervisors. Within a period, each VCPU of the domain is not allowed to consume more than the quota worth of runtime. The value should be in range [1000, 1000000]. A period with value 0 means no value.",
"maximum": 1000000,
"minimum": 1000,
"title": "Quota: CPU Period",
"type": "integer"
},
"quota:cpu_quota": {
"description": "Specifies the maximum allowed bandwidth (unit: microseconds). A domain with a negative-value quota indicates that the domain has infinite bandwidth, which means that it is not bandwidth controlled. The value should be in range [1000, 18446744073709551] or less than 0. A quota with value 0 means no value. You can use this feature to ensure that all vCPUs run at the same speed.",
"title": "Quota: CPU Quota",
"type": "integer"
},
"quota:cpu_shares": {
"description": "Specifies the proportional weighted share for the domain. If this element is omitted, the service defaults to the OS provided defaults. There is no unit for the value; it is a relative measure based on the setting of other VMs. For example, a VM configured with value 2048 gets twice as much CPU time as a VM configured with value 1024.",
"title": "Quota: CPU Shares",
"type": "integer"
}
},
"required": [],
"schema": "/v2/schemas/metadefs/object",
"self": "/v2/metadefs/namespaces/OS::Compute::Quota/objects/CPU Limits",
"updated_at": "2014-09-19T18:20:56Z"
}

View File

@ -0,0 +1,28 @@
{
"created_at": "2014-09-19T18:20:56Z",
"description": "You can configure the CPU limits with control parameters.",
"name": "CPU Limits",
"properties": {
"quota:cpu_period": {
"description": "Specifies the enforcement interval (unit: microseconds) for QEMU and LXC hypervisors. Within a period, each VCPU of the domain is not allowed to consume more than the quota worth of runtime. The value should be in range [1000, 1000000]. A period with value 0 means no value.",
"maximum": 1000000,
"minimum": 1000,
"title": "Quota: CPU Period",
"type": "integer"
},
"quota:cpu_quota": {
"description": "Specifies the maximum allowed bandwidth (unit: microseconds). A domain with a negative-value quota indicates that the domain has infinite bandwidth, which means that it is not bandwidth controlled. The value should be in range [1000, 18446744073709551] or less than 0. A quota with value 0 means no value. You can use this feature to ensure that all vCPUs run at the same speed.",
"title": "Quota: CPU Quota",
"type": "integer"
},
"quota:cpu_shares": {
"description": "Specifies the proportional weighted share for the domain. If this element is omitted, the service defaults to the OS provided defaults. There is no unit for the value; it is a relative measure based on the setting of other VMs. For example, a VM configured with value 2048 gets twice as much CPU time as a VM configured with value 1024.",
"title": "Quota: CPU Shares",
"type": "integer"
}
},
"required": [],
"schema": "/v2/schemas/metadefs/object",
"self": "/v2/metadefs/namespaces/OS::Compute::Quota/objects/CPU Limits",
"updated_at": "2014-09-19T18:20:56Z"
}

View File

@ -0,0 +1,112 @@
{
"objects": [
{
"created_at": "2014-09-18T18:16:35Z",
"description": "You can configure the CPU limits with control parameters.",
"name": "CPU Limits",
"properties": {
"quota:cpu_period": {
"description": "Specifies the enforcement interval (unit: microseconds) for QEMU and LXC hypervisors. Within a period, each VCPU of the domain is not allowed to consume more than the quota worth of runtime. The value should be in range [1000, 1000000]. A period with value 0 means no value.",
"maximum": 1000000,
"minimum": 1000,
"title": "Quota: CPU Period",
"type": "integer"
},
"quota:cpu_quota": {
"description": "Specifies the maximum allowed bandwidth (unit: microseconds). A domain with a negative-value quota indicates that the domain has infinite bandwidth, which means that it is not bandwidth controlled. The value should be in range [1000, 18446744073709551] or less than 0. A quota with value 0 means no value. You can use this feature to ensure that all vCPUs run at the same speed.",
"title": "Quota: CPU Quota",
"type": "integer"
},
"quota:cpu_shares": {
"description": "Specifies the proportional weighted share for the domain. If this element is omitted, the service defaults to the OS provided defaults. There is no unit for the value; it is a relative measure based on the setting of other VMs. For example, a VM configured with value 2048 gets twice as much CPU time as a VM configured with value 1024.",
"title": "Quota: CPU Shares",
"type": "integer"
}
},
"required": [],
"schema": "/v2/schemas/metadefs/object",
"self": "/v2/metadefs/namespaces/OS::Compute::Quota/objects/CPU Limits"
},
{
"created_at": "2014-09-18T18:16:35Z",
"description": "Using disk I/O quotas, you can set maximum disk write to 10 MB per second for a VM user.",
"name": "Disk QoS",
"properties": {
"quota:disk_read_bytes_sec": {
"description": "Sets disk I/O quota for disk read bytes / sec.",
"title": "Quota: Disk read bytes / sec",
"type": "integer"
},
"quota:disk_read_iops_sec": {
"description": "Sets disk I/O quota for disk read IOPS / sec.",
"title": "Quota: Disk read IOPS / sec",
"type": "integer"
},
"quota:disk_total_bytes_sec": {
"description": "Sets disk I/O quota for total disk bytes / sec.",
"title": "Quota: Disk Total Bytes / sec",
"type": "integer"
},
"quota:disk_total_iops_sec": {
"description": "Sets disk I/O quota for disk total IOPS / sec.",
"title": "Quota: Disk Total IOPS / sec",
"type": "integer"
},
"quota:disk_write_bytes_sec": {
"description": "Sets disk I/O quota for disk write bytes / sec.",
"title": "Quota: Disk Write Bytes / sec",
"type": "integer"
},
"quota:disk_write_iops_sec": {
"description": "Sets disk I/O quota for disk write IOPS / sec.",
"title": "Quota: Disk Write IOPS / sec",
"type": "integer"
}
},
"required": [],
"schema": "/v2/schemas/metadefs/object",
"self": "/v2/metadefs/namespaces/OS::Compute::Quota/objects/Disk QoS"
},
{
"created_at": "2014-09-18T18:16:35Z",
"description": "Bandwidth QoS tuning for instance virtual interfaces (VIFs) may be specified with these properties. Incoming and outgoing traffic can be shaped independently. If not specified, no quality of service (QoS) is applied on that traffic direction. So, if you want to shape only the network's incoming traffic, use inbound only (and vice versa). The OpenStack Networking service abstracts the physical implementation of the network, allowing plugins to configure and manage physical resources. Virtual Interfaces (VIF) in the logical model are analogous to physical network interface cards (NICs). VIFs are typically owned a managed by an external service; for instance when OpenStack Networking is used for building OpenStack networks, VIFs would be created, owned, and managed in Nova. VIFs are connected to OpenStack Networking networks via ports. A port is analogous to a port on a network switch, and it has an administrative state. When a VIF is attached to a port the OpenStack Networking API creates an attachment object, which specifies the fact that a VIF with a given identifier is plugged into the port.",
"name": "Virtual Interface QoS",
"properties": {
"quota:vif_inbound_average": {
"description": "Network Virtual Interface (VIF) inbound average in kilobytes per second. Specifies average bit rate on the interface being shaped.",
"title": "Quota: VIF Inbound Average",
"type": "integer"
},
"quota:vif_inbound_burst": {
"description": "Network Virtual Interface (VIF) inbound burst in total kilobytes. Specifies the amount of bytes that can be burst at peak speed.",
"title": "Quota: VIF Inbound Burst",
"type": "integer"
},
"quota:vif_inbound_peak": {
"description": "Network Virtual Interface (VIF) inbound peak in kilobytes per second. Specifies maximum rate at which an interface can receive data.",
"title": "Quota: VIF Inbound Peak",
"type": "integer"
},
"quota:vif_outbound_average": {
"description": "Network Virtual Interface (VIF) outbound average in kilobytes per second. Specifies average bit rate on the interface being shaped.",
"title": "Quota: VIF Outbound Average",
"type": "integer"
},
"quota:vif_outbound_burst": {
"description": "Network Virtual Interface (VIF) outbound burst in total kilobytes. Specifies the amount of bytes that can be burst at peak speed.",
"title": "Quota: VIF Outbound Burst",
"type": "integer"
},
"quota:vif_outbound_peak": {
"description": "Network Virtual Interface (VIF) outbound peak in kilobytes per second. Specifies maximum rate at which an interface can send data.",
"title": "Quota: VIF Outbound Burst",
"type": "integer"
}
},
"required": [],
"schema": "/v2/schemas/metadefs/object",
"self": "/v2/metadefs/namespaces/OS::Compute::Quota/objects/Virtual Interface QoS"
}
],
"schema": "v2/schemas/metadefs/objects"
}

View File

@ -0,0 +1,12 @@
{
"description": "You can configure the CPU limits with control parameters.",
"name": "CPU Limits",
"properties": {
"quota:cpu_shares": {
"description": "Specifies the proportional weighted share for the domain. If this element is omitted, the service defaults to the OS provided defaults. There is no unit for the value; it is a relative measure based on the setting of other VMs. For example, a VM configured with value 2048 gets twice as much CPU time as a VM configured with value 1024.",
"title": "Quota: CPU Shares",
"type": "integer"
}
},
"required": []
}

View File

@ -0,0 +1,16 @@
{
"created_at": "2014-09-19T19:20:56Z",
"description": "You can configure the CPU limits with control parameters.",
"name": "CPU Limits",
"properties": {
"quota:cpu_shares": {
"description": "Specifies the proportional weighted share for the domain. If this element is omitted, the service defaults to the OS provided defaults. There is no unit for the value; it is a relative measure based on the setting of other VMs. For example, a VM configured with value 2048 gets twice as much CPU time as a VM configured with value 1024.",
"title": "Quota: CPU Shares",
"type": "integer"
}
},
"required": [],
"schema": "/v2/schemas/metadefs/object",
"self": "/v2/metadefs/namespaces/OS::Compute::Quota/objects/CPU Limits",
"updated_at": "2014-09-19T19:20:56Z"
}

View File

@ -0,0 +1,15 @@
{
"description": "The hypervisor type. It may be used by the host properties filter for scheduling. The ImagePropertiesFilter filters compute nodes that satisfy any architecture, hypervisor type, or virtual machine mode properties specified on the instance's image properties. Image properties are contained in the image dictionary in the request_spec.",
"enum": [
"xen",
"qemu",
"kvm",
"lxc",
"uml",
"vmware",
"hyperv"
],
"name": "hypervisor_type",
"title": "Hypervisor Type",
"type": "string"
}

View File

@ -0,0 +1,15 @@
{
"description": "The hypervisor type. It may be used by the host properties filter for scheduling. The ImagePropertiesFilter filters compute nodes that satisfy any architecture, hypervisor type, or virtual machine mode properties specified on the instance's image properties. Image properties are contained in the image dictionary in the request_spec.",
"enum": [
"xen",
"qemu",
"kvm",
"lxc",
"uml",
"vmware",
"hyperv"
],
"name": "hypervisor_type",
"title": "Hypervisor Type",
"type": "string"
}

View File

@ -0,0 +1,15 @@
{
"description": "The hypervisor type. It may be used by the host properties filter for scheduling. The ImagePropertiesFilter filters compute nodes that satisfy any architecture, hypervisor type, or virtual machine mode properties specified on the instance's image properties. Image properties are contained in the image dictionary in the request_spec.",
"enum": [
"xen",
"qemu",
"kvm",
"lxc",
"uml",
"vmware",
"hyperv"
],
"name": "hypervisor_type",
"title": "Hypervisor Type",
"type": "string"
}

View File

@ -0,0 +1,86 @@
{
"properties": {
"hw_disk_bus": {
"description": "Specifies the type of disk controller to attach disk devices to.",
"enum": [
"scsi",
"virtio",
"uml",
"xen",
"ide",
"usb"
],
"title": "Disk Bus",
"type": "string"
},
"hw_machine_type": {
"description": "Enables booting an ARM system using the specified machine type. By default, if an ARM image is used and its type is not specified, Compute uses vexpress-a15 (for ARMv7) or virt (for AArch64) machine types. Valid types can be viewed by using the virsh capabilities command (machine types are displayed in the machine tag).",
"title": "Machine Type",
"type": "string"
},
"hw_qemu_guest_agent": {
"description": "It is a daemon program running inside the domain which is supposed to help management applications with executing functions which need assistance of the guest OS. For example, freezing and thawing filesystems, entering suspend. However, guest agent (GA) is not bullet proof, and hostile guest OS can send spurious replies.",
"enum": [
"yes",
"no"
],
"title": "QEMU Guest Agent",
"type": "string"
},
"hw_rng_model": {
"default": "virtio",
"description": "Adds a random-number generator device to the image's instances. The cloud administrator can enable and control device behavior by configuring the instance's flavor. By default: The generator device is disabled. /dev/random is used as the default entropy source. To specify a physical HW RNG device, use the following option in the nova.conf file: rng_dev_path=/dev/hwrng",
"title": "Random Number Generator Device",
"type": "string"
},
"hw_scsi_model": {
"default": "virtio-scsi",
"description": "Enables the use of VirtIO SCSI (virtio-scsi) to provide block device access for compute instances; by default, instances use VirtIO Block (virtio-blk). VirtIO SCSI is a para-virtualized SCSI controller device that provides improved scalability and performance, and supports advanced SCSI hardware.",
"title": "SCSI Model",
"type": "string"
},
"hw_video_model": {
"description": "The video image driver used.",
"enum": [
"vga",
"cirrus",
"vmvga",
"xen",
"qxl"
],
"title": "Video Model",
"type": "string"
},
"hw_video_ram": {
"description": "Maximum RAM for the video image. Used only if a hw_video:ram_max_mb value has been set in the flavor's extra_specs and that value is higher than the value set in hw_video_ram.",
"title": "Max Video Ram",
"type": "integer"
},
"hw_vif_model": {
"description": "Specifies the model of virtual network interface device to use. The valid options depend on the configured hypervisor. KVM and QEMU: e1000, ne2k_pci, pcnet, rtl8139, and virtio. VMware: e1000, e1000e, VirtualE1000, VirtualE1000e, VirtualPCNet32, VirtualSriovEthernetCard, and VirtualVmxnet. Xen: e1000, netfront, ne2k_pci, pcnet, and rtl8139.",
"enum": [
"e1000",
"ne2k_pci",
"pcnet",
"rtl8139",
"virtio",
"e1000",
"e1000e",
"VirtualE1000",
"VirtualE1000e",
"VirtualPCNet32",
"VirtualSriovEthernetCard",
"VirtualVmxnet",
"netfront",
"ne2k_pci"
],
"title": "Virtual Network Interface",
"type": "string"
},
"os_command_line": {
"description": "The kernel command line to be used by the libvirt driver, instead of the default. For linux containers (LXC), the value is used as arguments for initialization. This key is valid only for Amazon kernel, ramdisk, or machine images (aki, ari, or ami).",
"title": "Kernel Command Line",
"type": "string"
}
}
}

View File

@ -0,0 +1,15 @@
{
"description": "The hypervisor type. It may be used by the host properties filter for scheduling. The ImagePropertiesFilter filters compute nodes that satisfy any architecture, hypervisor type, or virtual machine mode properties specified on the instance's image properties. Image properties are contained in the image dictionary in the request_spec.",
"enum": [
"xen",
"qemu",
"kvm",
"lxc",
"uml",
"vmware",
"hyperv"
],
"name": "hypervisor_type",
"title": "Hypervisor Type",
"type": "string"
}

View File

@ -0,0 +1,15 @@
{
"description": "The hypervisor type. It may be used by the host properties filter for scheduling. The ImagePropertiesFilter filters compute nodes that satisfy any architecture, hypervisor type, or virtual machine mode properties specified on the instance's image properties. Image properties are contained in the image dictionary in the request_spec.",
"enum": [
"xen",
"qemu",
"kvm",
"lxc",
"uml",
"vmware",
"hyperv"
],
"name": "hypervisor_type",
"title": "Hypervisor Type",
"type": "string"
}

View File

@ -0,0 +1,5 @@
{
"name": "OS::Cinder::Volume",
"prefix": "hw_",
"properties_target": "image"
}

View File

@ -0,0 +1,7 @@
{
"created_at": "2014-09-19T16:09:13Z",
"name": "OS::Cinder::Volume",
"prefix": "hw_",
"properties_target": "image",
"updated_at": "2014-09-19T16:09:13Z"
}

View File

@ -0,0 +1,17 @@
{
"resource_type_associations": [
{
"created_at": "2014-09-19T16:13:33Z",
"name": "OS::Glance::Image",
"prefix": "hw_",
"updated_at": "2014-09-19T16:13:33Z"
},
{
"created_at": "2014-09-19T16:09:13Z",
"name": "OS::Cinder::Volume",
"prefix": "hw_",
"properties_target": "image",
"updated_at": "2014-09-19T16:09:13Z"
}
]
}

View File

@ -0,0 +1,29 @@
{
"resource_types": [
{
"created_at": "2014-08-28T18:13:04Z",
"name": "OS::Glance::Image",
"updated_at": "2014-08-28T18:13:04Z"
},
{
"created_at": "2014-08-28T18:13:04Z",
"name": "OS::Cinder::Volume",
"updated_at": "2014-08-28T18:13:04Z"
},
{
"created_at": "2014-08-28T18:13:04Z",
"name": "OS::Nova::Flavor",
"updated_at": "2014-08-28T18:13:04Z"
},
{
"created_at": "2014-08-28T18:13:04Z",
"name": "OS::Nova::Aggregate",
"updated_at": "2014-08-28T18:13:04Z"
},
{
"created_at": "2014-08-28T18:13:04Z",
"name": "OS::Nova::Instance",
"updated_at": "2014-08-28T18:13:04Z"
}
]
}

View File

@ -1,52 +1,4 @@
{
"name": "image",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"visibility": {
"enum": [
"public",
"private"
]
},
"status": {
"type": "string"
},
"protected": {
"type": "boolean"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"checksum": {
"type": "string"
},
"size": {
"type": "integer"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"file": {
"type": "string"
},
"self": {
"type": "string"
},
"schema": {
"type": "string"
}
},
"additionalProperties": {
"type": "string"
},
@ -63,5 +15,53 @@
"href": "{schema}",
"rel": "describedby"
}
],
"name": "image",
"properties": {
"checksum": {
"type": "string"
},
"created_at": {
"type": "string"
},
"file": {
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"protected": {
"type": "boolean"
},
"schema": {
"type": "string"
},
"self": {
"type": "string"
},
"size": {
"type": "integer"
},
"status": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"updated_at": {
"type": "string"
},
"visibility": {
"enum": [
"public",
"private"
]
}
}
}

View File

@ -0,0 +1,212 @@
{
"additionalProperties": false,
"definitions": {
"positiveInteger": {
"minimum": 0,
"type": "integer"
},
"positiveIntegerDefault0": {
"allOf": [
{
"$ref": "#/definitions/positiveInteger"
},
{
"default": 0
}
]
},
"property": {
"additionalProperties": {
"properties": {
"additionalItems": {
"type": "boolean"
},
"default": {},
"description": {
"type": "string"
},
"enum": {
"type": "array"
},
"items": {
"properties": {
"enum": {
"type": "array"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
}
},
"type": "object"
},
"maxItems": {
"$ref": "#/definitions/positiveInteger"
},
"maxLength": {
"$ref": "#/definitions/positiveInteger"
},
"maximum": {
"type": "number"
},
"minItems": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minLength": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minimum": {
"type": "number"
},
"name": {
"type": "string"
},
"pattern": {
"format": "regex",
"type": "string"
},
"readonly": {
"type": "boolean"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"title": {
"type": "string"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
},
"uniqueItems": {
"default": false,
"type": "boolean"
}
},
"required": [
"title",
"type"
],
"type": "object"
},
"type": "object"
},
"stringArray": {
"items": {
"type": "string"
},
"type": "array",
"uniqueItems": true
}
},
"name": "namespace",
"properties": {
"created_at": {
"description": "Date and time of namespace creation (READ-ONLY)",
"format": "date-time",
"type": "string"
},
"description": {
"description": "Provides a user friendly description of the namespace.",
"maxLength": 500,
"type": "string"
},
"display_name": {
"description": "The user friendly name for the namespace. Used by UI if available.",
"maxLength": 80,
"type": "string"
},
"namespace": {
"description": "The unique namespace text.",
"maxLength": 80,
"type": "string"
},
"objects": {
"items": {
"properties": {
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"properties": {
"$ref": "#/definitions/property"
},
"required": {
"$ref": "#/definitions/stringArray"
}
},
"type": "object"
},
"type": "array"
},
"owner": {
"description": "Owner of the namespace.",
"maxLength": 255,
"type": "string"
},
"properties": {
"$ref": "#/definitions/property"
},
"protected": {
"description": "If true, namespace will not be deletable.",
"type": "boolean"
},
"resource_type_associations": {
"items": {
"properties": {
"name": {
"type": "string"
},
"prefix": {
"type": "string"
},
"properties_target": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"schema": {
"type": "string"
},
"self": {
"type": "string"
},
"updated_at": {
"description": "Date and time of the last namespace modification (READ-ONLY)",
"format": "date-time",
"type": "string"
},
"visibility": {
"description": "Scope of namespace accessibility.",
"enum": [
"public",
"private"
],
"type": "string"
}
},
"required": [
"namespace"
]
}

View File

@ -0,0 +1,243 @@
{
"definitions": {
"positiveInteger": {
"minimum": 0,
"type": "integer"
},
"positiveIntegerDefault0": {
"allOf": [
{
"$ref": "#/definitions/positiveInteger"
},
{
"default": 0
}
]
},
"property": {
"additionalProperties": {
"properties": {
"additionalItems": {
"type": "boolean"
},
"default": {},
"description": {
"type": "string"
},
"enum": {
"type": "array"
},
"items": {
"properties": {
"enum": {
"type": "array"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
}
},
"type": "object"
},
"maxItems": {
"$ref": "#/definitions/positiveInteger"
},
"maxLength": {
"$ref": "#/definitions/positiveInteger"
},
"maximum": {
"type": "number"
},
"minItems": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minLength": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minimum": {
"type": "number"
},
"name": {
"type": "string"
},
"pattern": {
"format": "regex",
"type": "string"
},
"readonly": {
"type": "boolean"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"title": {
"type": "string"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
},
"uniqueItems": {
"default": false,
"type": "boolean"
}
},
"required": [
"title",
"type"
],
"type": "object"
},
"type": "object"
},
"stringArray": {
"items": {
"type": "string"
},
"type": "array",
"uniqueItems": true
}
},
"links": [
{
"href": "{first}",
"rel": "first"
},
{
"href": "{next}",
"rel": "next"
},
{
"href": "{schema}",
"rel": "describedby"
}
],
"name": "namespaces",
"properties": {
"first": {
"type": "string"
},
"namespaces": {
"items": {
"additionalProperties": false,
"name": "namespace",
"properties": {
"created_at": {
"description": "Date and time of namespace creation (READ-ONLY)",
"format": "date-time",
"type": "string"
},
"description": {
"description": "Provides a user friendly description of the namespace.",
"maxLength": 500,
"type": "string"
},
"display_name": {
"description": "The user friendly name for the namespace. Used by UI if available.",
"maxLength": 80,
"type": "string"
},
"namespace": {
"description": "The unique namespace text.",
"maxLength": 80,
"type": "string"
},
"objects": {
"items": {
"properties": {
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"properties": {
"$ref": "#/definitions/property"
},
"required": {
"$ref": "#/definitions/stringArray"
}
},
"type": "object"
},
"type": "array"
},
"owner": {
"description": "Owner of the namespace.",
"maxLength": 255,
"type": "string"
},
"properties": {
"$ref": "#/definitions/property"
},
"protected": {
"description": "If true, namespace will not be deletable.",
"type": "boolean"
},
"resource_type_associations": {
"items": {
"properties": {
"name": {
"type": "string"
},
"prefix": {
"type": "string"
},
"properties_target": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"schema": {
"type": "string"
},
"self": {
"type": "string"
},
"updated_at": {
"description": "Date and time of the last namespace modification (READ-ONLY)",
"format": "date-time",
"type": "string"
},
"visibility": {
"description": "Scope of namespace accessibility.",
"enum": [
"public",
"private"
],
"type": "string"
}
},
"required": [
"namespace"
]
},
"type": "array"
},
"next": {
"type": "string"
},
"schema": {
"type": "string"
}
}
}

View File

@ -0,0 +1,152 @@
{
"additionalProperties": false,
"definitions": {
"positiveInteger": {
"minimum": 0,
"type": "integer"
},
"positiveIntegerDefault0": {
"allOf": [
{
"$ref": "#/definitions/positiveInteger"
},
{
"default": 0
}
]
},
"property": {
"additionalProperties": {
"properties": {
"additionalItems": {
"type": "boolean"
},
"default": {},
"description": {
"type": "string"
},
"enum": {
"type": "array"
},
"items": {
"properties": {
"enum": {
"type": "array"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
}
},
"type": "object"
},
"maxItems": {
"$ref": "#/definitions/positiveInteger"
},
"maxLength": {
"$ref": "#/definitions/positiveInteger"
},
"maximum": {
"type": "number"
},
"minItems": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minLength": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minimum": {
"type": "number"
},
"name": {
"type": "string"
},
"pattern": {
"format": "regex",
"type": "string"
},
"readonly": {
"type": "boolean"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"title": {
"type": "string"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
},
"uniqueItems": {
"default": false,
"type": "boolean"
}
},
"required": [
"title",
"type"
],
"type": "object"
},
"type": "object"
},
"stringArray": {
"items": {
"type": "string"
},
"type": "array",
"uniqueItems": true
}
},
"name": "object",
"properties": {
"created_at": {
"description": "Date and time of object creation (READ-ONLY)",
"format": "date-time",
"type": "string"
},
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"properties": {
"$ref": "#/definitions/property"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"schema": {
"type": "string"
},
"self": {
"type": "string"
},
"updated_at": {
"description": "Date and time of the last object modification (READ-ONLY)",
"format": "date-time",
"type": "string"
}
},
"required": [
"name"
]
}

View File

@ -0,0 +1,183 @@
{
"definitions": {
"positiveInteger": {
"minimum": 0,
"type": "integer"
},
"positiveIntegerDefault0": {
"allOf": [
{
"$ref": "#/definitions/positiveInteger"
},
{
"default": 0
}
]
},
"property": {
"additionalProperties": {
"properties": {
"additionalItems": {
"type": "boolean"
},
"default": {},
"description": {
"type": "string"
},
"enum": {
"type": "array"
},
"items": {
"properties": {
"enum": {
"type": "array"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
}
},
"type": "object"
},
"maxItems": {
"$ref": "#/definitions/positiveInteger"
},
"maxLength": {
"$ref": "#/definitions/positiveInteger"
},
"maximum": {
"type": "number"
},
"minItems": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minLength": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minimum": {
"type": "number"
},
"name": {
"type": "string"
},
"pattern": {
"format": "regex",
"type": "string"
},
"readonly": {
"type": "boolean"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"title": {
"type": "string"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
},
"uniqueItems": {
"default": false,
"type": "boolean"
}
},
"required": [
"title",
"type"
],
"type": "object"
},
"type": "object"
},
"stringArray": {
"items": {
"type": "string"
},
"type": "array",
"uniqueItems": true
}
},
"links": [
{
"href": "{first}",
"rel": "first"
},
{
"href": "{next}",
"rel": "next"
},
{
"href": "{schema}",
"rel": "describedby"
}
],
"name": "objects",
"properties": {
"first": {
"type": "string"
},
"next": {
"type": "string"
},
"objects": {
"items": {
"additionalProperties": false,
"name": "object",
"properties": {
"created_at": {
"description": "Date and time of object creation (READ-ONLY)",
"format": "date-time",
"type": "string"
},
"description": {
"type": "string"
},
"name": {
"type": "string"
},
"properties": {
"$ref": "#/definitions/property"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"schema": {
"type": "string"
},
"self": {
"type": "string"
},
"updated_at": {
"description": "Date and time of the last object modification (READ-ONLY)",
"format": "date-time",
"type": "string"
}
},
"required": [
"name"
]
},
"type": "array"
},
"schema": {
"type": "string"
}
}
}

View File

@ -0,0 +1,145 @@
{
"definitions": {
"positiveInteger": {
"minimum": 0,
"type": "integer"
},
"positiveIntegerDefault0": {
"allOf": [
{
"$ref": "#/definitions/positiveInteger"
},
{
"default": 0
}
]
},
"stringArray": {
"items": {
"type": "string"
},
"minItems": 1,
"type": "array",
"uniqueItems": true
}
},
"links": [
{
"href": "{first}",
"rel": "first"
},
{
"href": "{next}",
"rel": "next"
},
{
"href": "{schema}",
"rel": "describedby"
}
],
"name": "properties",
"properties": {
"first": {
"type": "string"
},
"next": {
"type": "string"
},
"properties": {
"additionalProperties": {
"additionalProperties": false,
"name": "property",
"properties": {
"additionalItems": {
"type": "boolean"
},
"default": {},
"description": {
"type": "string"
},
"enum": {
"type": "array"
},
"items": {
"properties": {
"enum": {
"type": "array"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
}
},
"type": "object"
},
"maxItems": {
"$ref": "#/definitions/positiveInteger"
},
"maxLength": {
"$ref": "#/definitions/positiveInteger"
},
"maximum": {
"type": "number"
},
"minItems": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minLength": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minimum": {
"type": "number"
},
"name": {
"type": "string"
},
"pattern": {
"format": "regex",
"type": "string"
},
"readonly": {
"type": "boolean"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"title": {
"type": "string"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
},
"uniqueItems": {
"default": false,
"type": "boolean"
}
},
"required": [
"type",
"title"
]
},
"type": "object"
},
"schema": {
"type": "string"
}
}
}

View File

@ -0,0 +1,115 @@
{
"additionalProperties": false,
"definitions": {
"positiveInteger": {
"minimum": 0,
"type": "integer"
},
"positiveIntegerDefault0": {
"allOf": [
{
"$ref": "#/definitions/positiveInteger"
},
{
"default": 0
}
]
},
"stringArray": {
"items": {
"type": "string"
},
"minItems": 1,
"type": "array",
"uniqueItems": true
}
},
"name": "property",
"properties": {
"additionalItems": {
"type": "boolean"
},
"default": {},
"description": {
"type": "string"
},
"enum": {
"type": "array"
},
"items": {
"properties": {
"enum": {
"type": "array"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
}
},
"type": "object"
},
"maxItems": {
"$ref": "#/definitions/positiveInteger"
},
"maxLength": {
"$ref": "#/definitions/positiveInteger"
},
"maximum": {
"type": "number"
},
"minItems": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minLength": {
"$ref": "#/definitions/positiveIntegerDefault0"
},
"minimum": {
"type": "number"
},
"name": {
"type": "string"
},
"pattern": {
"format": "regex",
"type": "string"
},
"readonly": {
"type": "boolean"
},
"required": {
"$ref": "#/definitions/stringArray"
},
"title": {
"type": "string"
},
"type": {
"enum": [
"array",
"boolean",
"integer",
"number",
"object",
"string",
null
],
"type": "string"
},
"uniqueItems": {
"default": false,
"type": "boolean"
}
},
"required": [
"type",
"title",
"name"
]
}

View File

@ -0,0 +1,34 @@
{
"additionalProperties": false,
"name": "resource_type_association",
"properties": {
"created_at": {
"description": "Date and time of resource type association (READ-ONLY)",
"format": "date-time",
"type": "string"
},
"name": {
"description": "Resource type names should be aligned with Heat resource types whenever possible: http://docs.openstack.org/developer/heat/template_guide/openstack.html",
"maxLength": 80,
"type": "string"
},
"prefix": {
"description": "Specifies the prefix to use for the given resource type. Any properties in the namespace should be prefixed with this prefix when being applied to the specified resource type. Must include prefix separator (e.g. a colon :). It is important to note that the same base property key can require different prefixes depending on the target resource type. For example: The desired virtual CPU topology can be set on both images and flavors via metadata. The keys have different prefixes on images than on flavors On flavors keys are prefixed with 'hw:', but on images the keys are prefixed with 'hw_'.",
"maxLength": 80,
"type": "string"
},
"properties_target": {
"description": "Some resource types allow more than one key / value pair per instance. For example, Cinder allows user and image metadata on volumes. Only the image properties metadata is evaluated by Nova (scheduling or drivers). This property allows a namespace target to remove the ambiguity.",
"maxLength": 80,
"type": "string"
},
"updated_at": {
"description": "Date and time of the last resource type association modification (READ-ONLY)",
"format": "date-time",
"type": "string"
}
},
"required": [
"name"
]
}

View File

@ -0,0 +1,65 @@
{
"links": [
{
"href": "{first}",
"rel": "first"
},
{
"href": "{next}",
"rel": "next"
},
{
"href": "{schema}",
"rel": "describedby"
}
],
"name": "resource_type_associations",
"properties": {
"first": {
"type": "string"
},
"next": {
"type": "string"
},
"resource_type_associations": {
"items": {
"additionalProperties": false,
"name": "resource_type_association",
"properties": {
"created_at": {
"description": "Date and time of resource type association (READ-ONLY)",
"format": "date-time",
"type": "string"
},
"name": {
"description": "Resource type names should be aligned with Heat resource types whenever possible: http://docs.openstack.org/developer/heat/template_guide/openstack.html",
"maxLength": 80,
"type": "string"
},
"prefix": {
"description": "Specifies the prefix to use for the given resource type. Any properties in the namespace should be prefixed with this prefix when being applied to the specified resource type. Must include prefix separator (e.g. a colon :). It is important to note that the same base property key can require different prefixes depending on the target resource type. For example: The desired virtual CPU topology can be set on both images and flavors via metadata. The keys have different prefixes on images than on flavors On flavors keys are prefixed with 'hw:', but on images the keys are prefixed with 'hw_'.",
"maxLength": 80,
"type": "string"
},
"properties_target": {
"description": "Some resource types allow more than one key / value pair per instance. For example, Cinder allows user and image metadata on volumes. Only the image properties metadata is evaluated by Nova (scheduling or drivers). This property allows a namespace target to remove the ambiguity.",
"maxLength": 80,
"type": "string"
},
"updated_at": {
"description": "Date and time of the last resource type association modification (READ-ONLY)",
"format": "date-time",
"type": "string"
}
},
"required": [
"name"
]
},
"type": "array"
},
"schema": {
"type": "string"
}
}
}

View File

@ -1,4 +1,21 @@
{
"additionalProperties": {
"type": "string"
},
"links": [
{
"href": "{self}",
"rel": "self"
},
{
"href": "{file}",
"rel": "enclosure"
},
{
"href": "{schema}",
"rel": "describedby"
}
],
"name": "image",
"properties": {
"architecture": {
@ -165,22 +182,5 @@
],
"type": "string"
}
},
"additionalProperties": {
"type": "string"
},
"links": [
{
"href": "{self}",
"rel": "self"
},
{
"href": "{file}",
"rel": "enclosure"
},
{
"href": "{schema}",
"rel": "describedby"
}
]
}

View File

@ -14,6 +14,9 @@
"description": "An identifier for the image member (tenantId)",
"type": "string"
},
"schema": {
"type": "string"
},
"status": {
"description": "The status of this image member",
"enum": [
@ -26,9 +29,6 @@
"updated_at": {
"description": "Date and time of last modification of image member",
"type": "string"
},
"schema": {
"type": "string"
}
}
}

View File

@ -1,4 +1,10 @@
{
"links": [
{
"href": "{schema}",
"rel": "describedby"
}
],
"name": "members",
"properties": {
"members": {
@ -18,6 +24,9 @@
"description": "An identifier for the image member (tenantId)",
"type": "string"
},
"schema": {
"type": "string"
},
"status": {
"description": "The status of this image member",
"enum": [
@ -30,9 +39,6 @@
"updated_at": {
"description": "Date and time of last modification of image member",
"type": "string"
},
"schema": {
"type": "string"
}
}
},
@ -41,11 +47,5 @@
"schema": {
"type": "string"
}
},
"links": [
{
"href": "{schema}",
"rel": "describedby"
}
]
}

View File

@ -1,4 +1,18 @@
{
"links": [
{
"href": "{first}",
"rel": "first"
},
{
"href": "{next}",
"rel": "next"
},
{
"href": "{schema}",
"rel": "describedby"
}
],
"name": "images",
"properties": {
"first": {
@ -6,6 +20,23 @@
},
"images": {
"items": {
"additionalProperties": {
"type": "string"
},
"links": [
{
"href": "{self}",
"rel": "self"
},
{
"href": "{file}",
"rel": "enclosure"
},
{
"href": "{schema}",
"rel": "describedby"
}
],
"name": "image",
"properties": {
"architecture": {
@ -172,24 +203,7 @@
],
"type": "string"
}
},
"additionalProperties": {
"type": "string"
},
"links": [
{
"href": "{self}",
"rel": "self"
},
{
"href": "{file}",
"rel": "enclosure"
},
{
"href": "{schema}",
"rel": "describedby"
}
]
},
"type": "array"
},
@ -199,19 +213,5 @@
"schema": {
"type": "string"
}
},
"links": [
{
"href": "{first}",
"rel": "first"
},
{
"href": "{next}",
"rel": "next"
},
{
"href": "{schema}",
"rel": "describedby"
}
]
}