661 lines
16 KiB
YAML
661 lines
16 KiB
YAML
# variables in header
|
|
request_id:
|
|
description: |
|
|
A unique ID for tracking service request. The request ID associated
|
|
with the request by default appears in the service logs.
|
|
in: header
|
|
required: true
|
|
type: UUID
|
|
|
|
# variables in path
|
|
abandon:
|
|
description: |
|
|
Indicates how to delete environment.
|
|
``True`` is used when just database must be cleaned.
|
|
``False`` is used if all resources used by environment must be destroyed.
|
|
in: path
|
|
required: false
|
|
default: false
|
|
type: boolean
|
|
action_id_url:
|
|
description: |
|
|
The UUID of the action to be executed on the deployed environment.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
category_id_url:
|
|
description: |
|
|
The UUID of the category.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
env_id_url:
|
|
description: |
|
|
The UUID of the environment.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
env_model_path:
|
|
description: |
|
|
Allows to get a specific section of the model, for example
|
|
``defaultNetworks``, ``region`` or ``?`` or any of the subsections.
|
|
in: path
|
|
required: false
|
|
type: string
|
|
env_name_update:
|
|
description: |
|
|
A name for the environment. Name must be at least
|
|
one non-white space symbol.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
pkg_id_url:
|
|
description: |
|
|
The UUID of the package.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
service_id_url:
|
|
description:
|
|
The UUID of a service belonging to an environment template.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
session_id_url:
|
|
description: |
|
|
The UUID of the session.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
task_id_url:
|
|
description: |
|
|
The UUID of the task associated with an action executed on a deployed
|
|
environment.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
template_id_url:
|
|
description: |
|
|
The UUID of the environment template.
|
|
in: path
|
|
required: true
|
|
type: string
|
|
template_is_public_url:
|
|
description: |
|
|
Indicates whether public environment templates are listed or not. The
|
|
following options are possible:
|
|
|
|
- ``True``. Public environments templates from all projects are listed.
|
|
- ``False``. Private environments templates from current project are
|
|
listed.
|
|
- ``empty``. All project templates plus public templates from all projects.
|
|
are listed
|
|
in: path
|
|
required: false
|
|
default: false
|
|
type: boolean
|
|
|
|
# variables in query
|
|
all_tenants:
|
|
description: |
|
|
Indicates whether environments from all projects are listed.
|
|
``True`` environments from all projects are listed. Admin user required.
|
|
``False`` environments only from current project are listed (default like
|
|
option unspecified).
|
|
in: query
|
|
required: false
|
|
default: false
|
|
type: boolean
|
|
catalog:
|
|
description: |
|
|
If ``false`` (default) - search packages, that current user can edit
|
|
(own for non-admin, all for admin). If ``true`` - search packages,
|
|
that current user can deploy (i.e. his own + public).
|
|
in: query
|
|
required: false
|
|
default: false
|
|
type: boolean
|
|
category:
|
|
description: |
|
|
Allows to filter by categories.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
class_name:
|
|
description: |
|
|
Search only for packages, that use specified class.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
fqn:
|
|
description: |
|
|
Allows to filter by fully qualified name.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
include_disabled:
|
|
description: |
|
|
Include disabled packages in the result.
|
|
in: query
|
|
required: false
|
|
default: false
|
|
type: boolean
|
|
limit:
|
|
description: |
|
|
When present the maximum number of results returned will not exceed
|
|
the specified value. The typical pattern of limit and marker is to
|
|
make an initial limited request and then to use the ID of the last
|
|
package from the response as the marker parameter in a
|
|
subsequent limited request.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
marker:
|
|
description: |
|
|
A package identifier marker may be specified. When present only
|
|
packages which occur after the identifier ID will be listed
|
|
in: query
|
|
required: false
|
|
type: string
|
|
order_by:
|
|
description: |
|
|
Allows to sort packages by ``fqn``, ``name``, ``created``.
|
|
Created is default value.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
owned:
|
|
description: |
|
|
Search only from packages owned by current project.
|
|
in: query
|
|
required: false
|
|
default: false
|
|
type: boolean
|
|
pkg_filters:
|
|
description: |
|
|
The filters that you want to use to search for packages in the
|
|
application catalog. If no filters query parameter is specified, the
|
|
application catalog API returns all packages allowed by the policy
|
|
settings. By using filters parameter, the API returns only the requested
|
|
set of packages that meet the filters. The list of filters includes:
|
|
|
|
* limit: the maximum number of packages to return
|
|
* type: the package type
|
|
* id: the package id
|
|
* category: the package category
|
|
* tag: the package tag
|
|
* class_name: the package class name
|
|
* fqn: the package fully qualified name
|
|
* name: the package name
|
|
in: query
|
|
required: false
|
|
type: string
|
|
pkg_id_query:
|
|
description: |
|
|
Allows to filter by package id.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
pkg_name_query:
|
|
description: |
|
|
Allows to filter by package name.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
pkg_type_query:
|
|
description: |
|
|
Allows to filter package by type, e.g. ``application``, ``library``.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
search:
|
|
description: |
|
|
Gives opportunity to search specified data by all the
|
|
package parameters and order packages.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
tenant:
|
|
description: |
|
|
Indicates environments from specified tenant are listed. Admin user required.
|
|
in: query
|
|
required: false
|
|
type: string
|
|
|
|
# variables in body
|
|
acquired_by:
|
|
description: |
|
|
The session that is currently `deploying` the environment. Returns the
|
|
`first` session id that is in ``DEPLOYING`` state for the environment.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
all_categories:
|
|
description: |
|
|
All categories available in the application catalog.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
author:
|
|
description: |
|
|
The author of the package.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
category_id:
|
|
description: |
|
|
The UUID of the category.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
category_name:
|
|
description: |
|
|
The name of the category.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
category_packages:
|
|
description: |
|
|
The list of packages associated with a package. Each package returned
|
|
includes its ``id``, ``fully_qualified_name``, and ``name``.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
class_definitions:
|
|
description: |
|
|
The class_definitions of the package.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
created:
|
|
description: |
|
|
The date and time when the resource was created. The date and time stamp
|
|
format is `ISO 8601 <https://en.wikipedia.org/wiki/ISO_8601>`_:
|
|
|
|
::
|
|
|
|
CCYY-MM-DDThh:mm:ss±hh:mm
|
|
|
|
For example, ``2015-08-27T09:49:58-05:00``.
|
|
|
|
The ``±hh:mm`` value, if included, is the time zone as an offset
|
|
from UTC.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
deployments:
|
|
description: |
|
|
The list of deployments for either the current environment or all
|
|
environments for the current tenant (project).
|
|
|
|
The following APIs control whether deployments by environment or by
|
|
project are returned:
|
|
|
|
* ``/deployments``: Returns all deployments for a project.
|
|
* ``/environments/{env_id}/deployments``: Returns all deployments for an
|
|
environment in a project.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
description:
|
|
description: |
|
|
The description of the package.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
enabled:
|
|
description: |
|
|
Whether the package is browsed in the Application Catalog.
|
|
in: body
|
|
required: true
|
|
type: boolean
|
|
env_default_networks:
|
|
description: |
|
|
The default networking information of the environment. The information
|
|
includes the ``name`` of the network, along with the ``type`` and ``id``
|
|
of the network, contained in the ``?`` property.
|
|
|
|
An example ``defaultNetworks`` object looks like::
|
|
|
|
"defaultNetworks": {
|
|
"environment": {
|
|
"internalNetworkName": "net_two",
|
|
"?": {
|
|
"type": "io.murano.resources.ExistingNeutronNetwork",
|
|
"id": "594e94fcfe4c48ef8f9b55edb3b9f177"
|
|
}
|
|
},
|
|
"flat": null
|
|
}
|
|
in: body
|
|
required: true
|
|
type: object
|
|
env_description:
|
|
description: |
|
|
The description of the environment.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
env_id:
|
|
description: |
|
|
The UUID of the environment.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
env_last_status:
|
|
description: |
|
|
Shows the most recent status of the environment for each service in the
|
|
environment. The response object includes detailed information
|
|
by ``service_id``.
|
|
in: body
|
|
required: true
|
|
type: object
|
|
env_model:
|
|
description: |
|
|
The ``?`` section of the environment, containing information about the
|
|
environment model, including its ``type``, ``id`` and associated
|
|
``metadata``.
|
|
in: body
|
|
required: true
|
|
type: object
|
|
env_name:
|
|
description: |
|
|
A name for the environment. Name must be at least one non-white space
|
|
symbol and less than 256 characters long.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
env_name_request:
|
|
description: |
|
|
A name for the environment. Name must be at least
|
|
one non-white space symbol.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
env_region:
|
|
description: |
|
|
Current region of the environment.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
env_status:
|
|
description: |
|
|
Current status of the environment. The available statuses are:
|
|
|
|
* **Ready to configure**. When the environment is new and contains no
|
|
components.
|
|
* **Ready to deploy**. When the environment contains a component or multiple
|
|
components and is ready for deployment.
|
|
* **Ready**. When the environment has been successfully deployed.
|
|
* **Deploying**. When the deploying is in progress.
|
|
* **Deploy FAILURE**. When the deployment finished with errors.
|
|
* **Deleting**. When deleting of an environment is in progress.
|
|
* **Delete FAILURE**. You can abandon the environment in this case.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
env_version:
|
|
description: |
|
|
Current version.
|
|
in: body
|
|
required: true
|
|
type: int
|
|
environments:
|
|
description: |
|
|
A list of ``environment`` object.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
fully_qualified_name:
|
|
description: |
|
|
The fqn of the package.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
is_public:
|
|
description: |
|
|
Whether the package is shared for other projects.
|
|
in: body
|
|
required: true
|
|
type: boolean
|
|
networking:
|
|
description: |
|
|
Current network of the environment.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
owner_id:
|
|
description: |
|
|
The owner id of the package.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
package_categories:
|
|
description: |
|
|
The categories associated with the package.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
package_count:
|
|
description: |
|
|
The number of packages associated with the category.
|
|
in: body
|
|
required: true
|
|
type: integer
|
|
packages:
|
|
description: |
|
|
A list of ``package`` object.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
pkg_file:
|
|
description: |
|
|
The upload package file.
|
|
in: body
|
|
required: true
|
|
type: object
|
|
pkg_id:
|
|
description: |
|
|
The UUID of the package.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
pkg_name:
|
|
description: |
|
|
The name of the package.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
pkg_supplier:
|
|
description: |
|
|
The supplier info of the package.
|
|
in: body
|
|
required: true
|
|
type: object
|
|
pkg_type:
|
|
description: |
|
|
The type of the package.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
regions:
|
|
description: |
|
|
Detailed region information for the cloud environment.
|
|
in: body
|
|
required: true
|
|
type: object
|
|
services:
|
|
description: |
|
|
A list of ``service`` objects.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
session_id:
|
|
description: |
|
|
The UUID of the session.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
session_state:
|
|
description: |
|
|
The current state of the environment. When a session is first
|
|
opened for the environment the state is ``opened``.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
session_user_id:
|
|
description: |
|
|
The UUID of the session owner.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
session_version:
|
|
description: |
|
|
The version of the session. It is tied to the version of the environment,
|
|
so that only sessions whose version matches that of the environment can
|
|
be deployed.
|
|
in: body
|
|
required: true
|
|
type: integer
|
|
tags:
|
|
description: |
|
|
The tags of the package.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
task_id:
|
|
description: |
|
|
The UUID of the task associated with an action executed on a deployed
|
|
environment.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
template_description:
|
|
description: |
|
|
The environment template description.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
template_id:
|
|
description: |
|
|
The UUID of the environment template.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
template_is_public:
|
|
description: |
|
|
Indicates whether an environment template is public or not.
|
|
|
|
- ``True``. The environment template is public. Can be cloned.
|
|
- ``False``. The environment template is private.
|
|
in: body
|
|
required: true
|
|
type: boolean
|
|
template_name:
|
|
description: |
|
|
The name of the environment template. Only alphanumeric characters are
|
|
allowed.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
template_service:
|
|
description: |
|
|
Detailed information about the ``service`` to be added to the environment
|
|
template. The ``service`` includes virtual resources and application
|
|
information. The virtual resources information is specified inside the
|
|
``instance`` object property. Application information is specified
|
|
inside the body of the ``service`` object.
|
|
|
|
The ``instance`` object properties include:
|
|
|
|
- ``assignFloatingIp``. Whether to assign a floating IP to the VM.
|
|
- ``keyname``. The key name of a key pair for the VM.
|
|
- ``image``. The image to be used to provision the VM.
|
|
- ``flavor``. The flavor to be used to provision the VM.
|
|
- ``?``. An object which includes the ``type`` of the server.
|
|
|
|
An example ``instance`` looks like::
|
|
|
|
{
|
|
"assignFloatingIp": "true",
|
|
"keyname": "mykeyname",
|
|
"image": "cloud-fedora-v3",
|
|
"flavor": "m1.medium",
|
|
"?": {
|
|
"type": "io.murano.resources.LinuxMuranoInstance",
|
|
"id": "ef984a74-29a4-45c0-b1dc-2ab9f075732e"
|
|
}
|
|
}
|
|
|
|
In addition, the ``service`` should also include the following:
|
|
|
|
- ``name``. The ``name`` of the application.
|
|
- ``?``. An object that includes the ``type`` and ``id`` of the
|
|
application. An example ``type`` is:
|
|
"io.murano.resources.LinuxMuranoInstance".
|
|
- ``port``: The port to be used by the application. The value must be
|
|
greater than 0 and less than 65536 (although formatted as a string).
|
|
|
|
The entire ``service`` looks like::
|
|
|
|
{
|
|
"instance": {
|
|
"assignFloatingIp": "true",
|
|
"keyname": "mykeyname",
|
|
"image": "cloud-fedora-v3",
|
|
"flavor": "m1.medium",
|
|
"?": {
|
|
"type": "io.murano.resources.LinuxMuranoInstance",
|
|
"id": "ef984a74-29a4-45c0-b1dc-2ab9f075732e"
|
|
}
|
|
},
|
|
"name": "orion",
|
|
"?": {
|
|
"type": "io.murano.apps.apache.Tomcat",
|
|
"id": "54cea43d-5970-4c73-b9ac-fea656f3c722"
|
|
},
|
|
"port": "8080"
|
|
}
|
|
in: body
|
|
required: true
|
|
type: object
|
|
template_services:
|
|
description: |
|
|
The list of environment template ``service`` objects.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
template_version:
|
|
description: |
|
|
The current version of the environment template.
|
|
in: body
|
|
required: true
|
|
type: integer
|
|
templates:
|
|
description: |
|
|
The list of templates.
|
|
in: body
|
|
required: true
|
|
type: array
|
|
tenant_id:
|
|
description: |
|
|
The UUID of the tenant. A tenant is also known as a project.
|
|
in: body
|
|
required: true
|
|
type: string
|
|
updated:
|
|
description: |
|
|
The date and time when the object was updated. The date and time stamp
|
|
format is `ISO 8601 <https://en.wikipedia.org/wiki/ISO_8601>`_:
|
|
|
|
::
|
|
|
|
CCYY-MM-DDThh:mm:ss±hh:mm
|
|
|
|
For example, ``2015-08-27T09:49:58-05:00``.
|
|
|
|
The ``±hh:mm`` value, if included, is the time zone as an offset from UTC.
|
|
in: body
|
|
required: true
|
|
type: string
|