## Application Catalog service (murano) command-line client

updated: 2018-01-24 20:42

# Application Catalog service (murano) command-line client

The murano client is the command-line interface (CLI) for the Application Catalog service (murano) API and its extensions.

This chapter documents murano version `0.13.0`.

For help on a specific murano command, enter:

    $ murano help COMMAND

## murano usage

    usage: murano [--version] [-d] [-v] [--cert-file OS_CERT] [--key-file OS_KEY]
                  [--ca-file OS_CACERT] [--api-timeout API_TIMEOUT]
                  [--os-tenant-id OS_TENANT_ID] [--os-tenant-name OS_TENANT_NAME]
                  [--os-region-name OS_REGION_NAME]
                  [--os-auth-token OS_AUTH_TOKEN] [--os-no-client-auth]
                  [--murano-url MURANO_URL] [--glance-url GLANCE_URL]
                  [--glare-url GLARE_URL]
                  [--murano-api-version MURANO_API_VERSION]
                  [--os-service-type OS_SERVICE_TYPE]
                  [--os-endpoint-type OS_ENDPOINT_TYPE] [--include-password]
                  [--murano-repo-url MURANO_REPO_URL]
                  [--murano-packages-service {murano,glance,glare}] [--insecure]
                  [--os-cacert <ca-certificate>] [--os-cert <certificate>]
                  [--os-key <key>] [--timeout <seconds>]
                  [--os-auth-url OS_AUTH_URL] [--os-domain-id OS_DOMAIN_ID]
                  [--os-domain-name OS_DOMAIN_NAME]
                  [--os-project-id OS_PROJECT_ID]
                  [--os-project-name OS_PROJECT_NAME]
                  [--os-project-domain-id OS_PROJECT_DOMAIN_ID]
                  [--os-project-domain-name OS_PROJECT_DOMAIN_NAME]
                  [--os-trust-id OS_TRUST_ID] [--os-user-id OS_USER_ID]
                  [--os-username OS_USERNAME]
                  [--os-user-domain-id OS_USER_DOMAIN_ID]
                  [--os-user-domain-name OS_USER_DOMAIN_NAME]
                  [--os-password OS_PASSWORD]
                  <subcommand> ...

Subcommands:

`app-show`
  List applications, added to specified environment.
`bundle-import`
  Import a bundle.
`bundle-save`
  Save a bundle.
`category-create`
  Create a category.
`category-delete`
  Delete a category.
`category-list`
  List all available categories.
`category-show`
  Display category details.
`class-schema`
  Display class schema
`deployment-list`
  List deployments for an environment or multiple environments.
`env-template-add-app`
  Add application to the environment template.
`env-template-clone`
  Create a new template, cloned from template.
`env-template-create`
  Create an environment template.
`env-template-create-env`
  Create a new environment from template.
`env-template-del-app`
  Delete application from the environment template.
`env-template-delete`
  Delete an environment template.
`env-template-list`
  List the environments templates.
`env-template-show`
  Display environment template details.
`env-template-update`
  Update an environment template.
`environment-action-call`
  Call action `ACTION` in environment `ID`.
`environment-action-get-result`
  Get result of `TASK` in environment `ID`.
`environment-apps-edit`
  Edit environment’s object model.
`environment-create`
  Create an environment.
`environment-delete`
  Delete an environment.
`environment-deploy`
  Start deployment of a murano environment session.
`environment-list`
  List the environments.
`environment-model-edit`
  Edit an environment’s object model.
`environment-model-show`
  Display an environment’s object model.
`environment-rename`
  Rename an environment.
`environment-session-create`
  Creates a new configuration session for environment ID.
`environment-show`
  Display environment details.
`package-create`
  Create an application package.
`package-delete`
  Delete a package.
`package-download`
  Download a package to a filename or stdout.
`package-import`
  Import a package.
`package-list`
  List available packages.
`package-save`
  Save a package.
`package-show`
  Display details for a package.
`package-update`
  Update an existing package.
`static-action-call`
  Call static method `METHOD` of the class `CLASS` with `ARGUMENTS`.
`bash-completion`
  Prints all of the commands and options to stdout.
`help`
  Display help about this program or one of its subcommands.

## murano optional arguments

`--version`
  Show program’s version number and exit.
`-d, --debug`
  Defaults to `env[MURANOCLIENT_DEBUG]`.
`-v, --verbose`
  Print more verbose output.
`--cert-file OS_CERT`
  DEPRECATED! Use –os-cert.
`--key-file OS_KEY`
  DEPRECATED! Use –os-key.
`--ca-file OS_CACERT`
  DEPRECATED! Use –os-cacert.
`--api-timeout API_TIMEOUT`
  Number of seconds to wait for an API response, defaults to system socket timeout.
`--os-tenant-id OS_TENANT_ID`
  Defaults to `env[OS_TENANT_ID]`.
`--os-tenant-name OS_TENANT_NAME`
  Defaults to `env[OS_TENANT_NAME]`.
`--os-region-name OS_REGION_NAME`
  Defaults to `env[OS_REGION_NAME]`.
`--os-auth-token OS_AUTH_TOKEN`
  Defaults to `env[OS_AUTH_TOKEN]`.
`--os-no-client-auth`
  Do not contact keystone for a token. Defaults to `env[OS_NO_CLIENT_AUTH]`.
`--murano-url MURANO_URL`
  Defaults to `env[MURANO_URL]`.
`--glance-url GLANCE_URL`
  Defaults to `env[GLANCE_URL]`.
`--glare-url GLARE_URL`
  Defaults to `env[GLARE_URL]`.
`--murano-api-version MURANO_API_VERSION`
  Defaults to `env[MURANO_API_VERSION]` or 1.
`--os-service-type OS_SERVICE_TYPE`
  Defaults to `env[OS_SERVICE_TYPE]`.
`--os-endpoint-type OS_ENDPOINT_TYPE`
  Defaults to `env[OS_ENDPOINT_TYPE]`.
`--include-password`
  Send os-username and os-password to murano.
`--murano-repo-url MURANO_REPO_URL`
  Defaults to `env[MURANO_REPO_URL]` or http://apps.openstack.org/api/v1/murano_repo/liberty/
`--murano-packages-service {murano,glance,glare}`
  Specifies if murano-api (“murano”) or Glance Artifact Repository (“glare”) should be used to store murano packages. Defaults to `env[MURANO_PACKAGES_SERVICE]` or to “murano”
`--insecure`
  Explicitly allow client to perform “insecure” TLS (https) requests. The server’s certificate will not be verified against any certificate authorities. This option should be used with caution.
`--os-cacert <ca-certificate>`
  Specify a CA bundle file to use in verifying a TLS (https) server certificate. Defaults to `env[OS_CACERT]`.
`--os-cert <certificate>`
  Defaults to `env[OS_CERT]`.
`--os-key <key>`
  Defaults to `env[OS_KEY]`.
`--timeout <seconds>`
  Set request timeout (in seconds).
`--os-auth-url OS_AUTH_URL`
  Authentication URL
`--os-domain-id OS_DOMAIN_ID`
  Domain ID to scope to
`--os-domain-name OS_DOMAIN_NAME`
  Domain name to scope to
`--os-project-id OS_PROJECT_ID`
  Project ID to scope to
`--os-project-name OS_PROJECT_NAME`
  Project name to scope to
`--os-project-domain-id OS_PROJECT_DOMAIN_ID`
  Domain ID containing project
`--os-project-domain-name OS_PROJECT_DOMAIN_NAME`
  Domain name containing project
`--os-trust-id OS_TRUST_ID`
  Trust ID
`--os-user-id OS_USER_ID`
  User ID
`--os-username OS_USERNAME, --os-user-name OS_USERNAME, --os-user_name OS_USERNAME`
  Username
`--os-user-domain-id OS_USER_DOMAIN_ID`
  User’s domain id
`--os-user-domain-name OS_USER_DOMAIN_NAME`
  User’s domain name
`--os-password OS_PASSWORD`
  User’s password

### murano app-show

    usage: murano app-show [-p <PATH>] <ID>

List applications, added to specified environment.

Positional arguments:

`<ID>`
  Environment ID to show applications from.

Optional arguments:

`-p <PATH>, --path <PATH>`
  Level of detalization to show. Leave empty to browse all applications in the environment.

### murano bundle-import

    usage: murano bundle-import [--is-public] [--exists-action {a,s,u}]
                                <FILE> [<FILE> ...]

Import a bundle. `FILE` can be either a path to a zip file, URL, or name from repo. If `FILE` is a local file, treat names of packages in a bundle as file names, relative to location of the bundle file. Requirements are first searched in the same directory.

Positional arguments:

`<FILE>`
  Bundle URL, bundle name, or path to the bundle file.

Optional arguments:

`--is-public`
  Make packages available to users from other tenants.
`--exists-action {a,s,u}`
  Default action when a package already exists.

### murano bundle-save

    usage: murano bundle-save [-p <PATH>] [--no-images] <BUNDLE>

Save a bundle. This will download a bundle of packages with all dependencies to specified path. If path doesn’t exist it will be created.

Positional arguments:

`<BUNDLE>`
  Bundle URL, bundle name, or path to the bundle file.

Optional arguments:

`-p <PATH>, --path <PATH>`
  Path to the directory to store packages. If not set will use current directory.
`--no-images`
  If set will skip images downloading.

### murano category-create

    usage: murano category-create <CATEGORY_NAME>

Create a category.

Positional arguments:

`<CATEGORY_NAME>`
  Category name.

### murano category-delete

    usage: murano category-delete <ID> [<ID> ...]

Delete a category.

Positional arguments:

`<ID>`
  ID of a category(ies) to delete.

### murano category-list

    usage: murano category-list

List all available categories.

### murano category-show

    usage: murano category-show <ID>

Display category details.

Positional arguments:

`<ID>`
  ID of a category(s) to show.

### murano class-schema

    usage: murano class-schema [--package-name PACKAGE_NAME]
                               [--class-version CLASS_VERSION]
                               <CLASS> [<METHOD> [<METHOD> ...]]

Display class schema

Positional arguments:

`<CLASS>`
  Class FQN
`<METHOD>`
  Method name

Optional arguments:

`--package-name PACKAGE_NAME`
  FQN of the package where the class is located
`--class-version CLASS_VERSION`
  Class version or version range (version spec)

### murano deployment-list

    usage: murano deployment-list [--all-environments] [<ID>]

List deployments for an environment or multiple environments.

Positional arguments:

`<ID>`
  Environment ID for which to list deployments.

Optional arguments:

`--all-environments`
  Lists all deployments for all environments in user’s tenant.

### murano env-template-add-app

    usage: murano env-template-add-app <ENV_TEMPLATE_ID> <FILE>

Add application to the environment template.

Positional arguments:

`<ENV_TEMPLATE_ID>`
  Environment template ID.
`<FILE>`
  Path to the template.

### murano env-template-clone

    usage: murano env-template-clone <ID> <ENV_TEMPLATE_NAME>

Create a new template, cloned from template.

Positional arguments:

`<ID>`
  Environment template ID.
`<ENV_TEMPLATE_NAME>`
  New environment template name.

### murano env-template-create

    usage: murano env-template-create [--is-public] <ENV_TEMPLATE_NAME>

Create an environment template.

Positional arguments:

`<ENV_TEMPLATE_NAME>`
  Environment template name.

Optional arguments:

`--is-public`
  Make the template available for users from other tenants.

### murano env-template-create-env

    usage: murano env-template-create-env [--region <REGION_NAME>] <ID> <ENV_NAME>

Create a new environment from template.

Positional arguments:

`<ID>`
  Environment template ID.
`<ENV_NAME>`
  New environment name.

Optional arguments:

`--region <REGION_NAME>`
  Name of the target OpenStack region.

### murano env-template-del-app

    usage: murano env-template-del-app <ENV_TEMPLATE_ID> <ENV_TEMPLATE_APP_ID>

Delete application from the environment template.

Positional arguments:

`<ENV_TEMPLATE_ID>`
  Environment template ID.
`<ENV_TEMPLATE_APP_ID>`
  Application ID.

### murano env-template-delete

    usage: murano env-template-delete <ID> [<ID> ...]

Delete an environment template.

Positional arguments:

`<ID>`
  ID of environment(s) template to delete.

### murano env-template-list

    usage: murano env-template-list

List the environments templates.

### murano env-template-show

    usage: murano env-template-show <ID>

Display environment template details.

Positional arguments:

`<ID>`
  Environment template ID.

### murano env-template-update

    usage: murano env-template-update <ID> <ENV_TEMPLATE_NAME>

Update an environment template.

Positional arguments:

`<ID>`
  Environment template ID.
`<ENV_TEMPLATE_NAME>`
  Environment template name.

### murano environment-action-call

    usage: murano environment-action-call --action-id <ACTION>
                                          [--arguments [<KEY=VALUE> [<KEY=VALUE> ...]]]
                                          id

Call action `ACTION` in environment `ID`. Returns id of an asynchronous task, that executes the action. Actions can only be called on a `deployed` environment. To view actions available in a given environment use `environment-show` command.

Positional arguments:

`id`
  ID of Environment to call action against.

Optional arguments:

`--action-id <ACTION>`
  ID of action to run.
`--arguments [<KEY=VALUE> [<KEY=VALUE> ...]]`
  Action arguments.

### murano environment-action-get-result

    usage: murano environment-action-get-result --task-id <TASK> <ID>

Get result of `TASK` in environment `ID`.

Positional arguments:

`<ID>`
  ID of Environment where task is being executed.

Optional arguments:

`--task-id <TASK>`
  ID of action to run.

### murano environment-apps-edit

    usage: murano environment-apps-edit --session-id <SESSION_ID> <ID> [FILE]

Edit environment’s object model. `FILE` is path to a file, that contains jsonpatch, that describes changes to be made to environment’s object-model. [ { “op”: “add”, “path”: “/-“, “value”: { … your-app object model here … } }, { “op”: “replace”, “path”: “/0/?/name”, “value”: “new_name” }, ] NOTE: Values ‘===id1===’, ‘===id2===’, etc. in the resulting object-model will be substituted with uuids. For more info on jsonpatch see RFC 6902

Positional arguments:

`<ID>`
  ID of Environment to edit.
`FILE`
  File to read jsonpatch from (defaults to stdin).

Optional arguments:

`--session-id <SESSION_ID>`
  Id of a config session.

### murano environment-create

    usage: murano environment-create [--join-net-id <NET_ID>]
                                     [--join-subnet-id <SUBNET_ID>]
                                     [--region <REGION_NAME>]
                                     <ENVIRONMENT_NAME>

Create an environment.

Positional arguments:

`<ENVIRONMENT_NAME>`
  Environment name.

Optional arguments:

`--join-net-id <NET_ID>`
  Network id to join.
`--join-subnet-id <SUBNET_ID>`
  Subnetwork id to join.
`--region <REGION_NAME>`
  Name of the target OpenStack region.

### murano environment-delete

    usage: murano environment-delete [--abandon] <NAME or ID> [<NAME or ID> ...]

Delete an environment.

Positional arguments:

`<NAME or ID>`
  Id or name of environment(s) to delete.

Optional arguments:

`--abandon`
  If set will abandon environment without deleting any of its resources.

### murano environment-deploy

    usage: murano environment-deploy --session-id <SESSION> <ID>

Start deployment of a murano environment session.

Positional arguments:

`<ID>`
  ID of Environment to deploy.

Optional arguments:

`--session-id <SESSION>`
  ID of configuration session to deploy.

### murano environment-list

    usage: murano environment-list [--all-tenants] [--tenant <TENANT_ID>]

List the environments.

Optional arguments:

`--all-tenants`
  Allows to list environments from all tenants (admin only).
`--tenant <TENANT_ID>`
  Allows to list environments for a given tenant (admin only).

### murano environment-model-edit

    usage: murano environment-model-edit --session-id <SESSION_ID> <ID> [<FILE>]

Edit an environment’s object model.

Positional arguments:

`<ID>`
  ID of Environment to edit.
`<FILE>`
  File to read JSON-patch from (defaults to stdin).

Optional arguments:

`--session-id <SESSION_ID>`
  Id of a config session.

### murano environment-model-show

    usage: murano environment-model-show [--path <PATH>]
                                         [--session-id <SESSION_ID>]
                                         <ID>

Display an environment’s object model.

Positional arguments:

`<ID>`
  ID of Environment to show.

Optional arguments:

`--path <PATH>`
  Path to Environment model section. Defaults to ‘/’.
`--session-id <SESSION_ID>`
  Id of a config session.

### murano environment-rename

    usage: murano environment-rename <NAME or ID> <ENVIRONMENT_NAME>

Rename an environment.

Positional arguments:

`<NAME or ID>`
  Environment ID or name.
`<ENVIRONMENT_NAME>`
  A name to which the environment will be renamed.

### murano environment-session-create

    usage: murano environment-session-create <ID>

Creates a new configuration session for environment ID.

Positional arguments:

`<ID>`
  ID of Environment to add session to.

### murano environment-show

    usage: murano environment-show [--session-id <SESSION_ID>] [--only-apps]
                                   <NAME or ID>

Display environment details.

Positional arguments:

`<NAME or ID>`
  Environment ID or name.

Optional arguments:

`--session-id <SESSION_ID>`
  Id of a config session.
`--only-apps`
  Only print apps of the environment (useful for automation).

### murano package-create

    usage: murano package-create [-t <HEAT_TEMPLATE>] [-c <CLASSES_DIRECTORY>]
                                 [-r <RESOURCES_DIRECTORY>] [-n <DISPLAY_NAME>]
                                 [-f <full-name>] [-a <AUTHOR>]
                                 [--tags [<TAG1 TAG2> [<TAG1 TAG2> ...]]]
                                 [-d <DESCRIPTION>] [-o <PACKAGE_NAME>]
                                 [-u <UI_DEFINITION>] [--type TYPE] [-l <LOGO>]

Create an application package.

Optional arguments:

`-t <HEAT_TEMPLATE>, --template <HEAT_TEMPLATE>`
  Path to the Heat template to import as an Application Definition.
`-c <CLASSES_DIRECTORY>, --classes-dir <CLASSES_DIRECTORY>`
  Path to the directory containing application classes.
`-r <RESOURCES_DIRECTORY>, --resources-dir <RESOURCES_DIRECTORY>`
  Path to the directory containing application resources.
`-n <DISPLAY_NAME>, --name <DISPLAY_NAME>`
  Display name of the Application in Catalog.
`-f <full-name>, --full-name <full-name>`
  Fully-qualified name of the Application in Catalog.
`-a <AUTHOR>, --author <AUTHOR>`
  Name of the publisher.
`--tags [<TAG1 TAG2> [<TAG1 TAG2> ...]]`
  A list of keywords connected to the application.
`-d <DESCRIPTION>, --description <DESCRIPTION>`
  Detailed description for the Application in Catalog.
`-o <PACKAGE_NAME>, --output <PACKAGE_NAME>`
  The name of the output file archive to save locally.
`-u <UI_DEFINITION>, --ui <UI_DEFINITION>`
  Dynamic UI form definition.
`--type TYPE`
  Package type. Possible values: Application or Library.
`-l <LOGO>, --logo <LOGO>`
  Path to the package logo.

### murano package-delete

    usage: murano package-delete <ID> [<ID> ...]

Delete a package.

Positional arguments:

`<ID>`
  Package ID to delete.

### murano package-download

    usage: murano package-download <ID> [file]

Download a package to a filename or stdout.

Positional arguments:

`<ID>`
  Package ID to download.
`file`
  Filename to save package to. If it is not specified and there is no stdout redirection the package won’t be saved.

### murano package-import

    usage: murano package-import [-c [<CATEGORY> [<CATEGORY> ...]]] [--is-public]
                                 [--package-version PACKAGE_VERSION]
                                 [--exists-action {a,s,u}]
                                 [--dep-exists-action {a,s,u}]
                                 <FILE> [<FILE> ...]

Import a package. `FILE` can be either a path to a zip file, url or a FQPN. You can use `–` to separate `FILE`s from other arguments. Categories have to be separated with a space and have to be already present in murano.

Positional arguments:

`<FILE>`
  URL of the murano zip package, FQPN, path to zip package or path to directory with package.

Optional arguments:

`-c [<CATEGORY> [<CATEGORY> ...]], --categories [<CATEGORY> [<CATEGORY> ...]]`
  Category list to attach.
`--is-public`
  Make the package available for users from other tenants.
`--package-version PACKAGE_VERSION`
  Version of the package to use from repository (ignored when importing with multiple packages).
`--exists-action {a,s,u}`
  Default action when a package already exists: (s)kip, (u)pdate, (a)bort.
`--dep-exists-action {a,s,u}`
  Default action when a dependency package already exists: (s)kip, (u)pdate, (a)bort.

### murano package-list

    usage: murano package-list [--limit LIMIT] [--marker MARKER]
                               [--include-disabled] [--owned]
                               [--search <SEARCH_KEYS>] [--name <PACKAGE_NAME>]
                               [--fqn <PACKAGE_FULLY_QUALIFIED_NAME>]
                               [--type <PACKAGE_TYPE>]
                               [--category <PACKAGE_CATEGORY>]
                               [--class_name <PACKAGE_CLASS_NAME>]
                               [--tag <PACKAGE_TAG>]

List available packages.

Optional arguments:

`--limit LIMIT`
  Show limited number of packages
`--marker MARKER`
  Show packages starting from package with id excluding it

`--include-disabled`

`--owned`

`--search <SEARCH_KEYS>`
  Show packages, that match search keys fuzzily
`--name <PACKAGE_NAME>`
  Show packages, whose name match parameter exactly
`--fqn <PACKAGE_FULLY_QUALIFIED_NAME>`
  Show packages, whose fully qualified name match parameter exactly
`--type <PACKAGE_TYPE>`
  Show packages, whose type match parameter exactly
`--category <PACKAGE_CATEGORY>`
  Show packages, whose categories include parameter
`--class_name <PACKAGE_CLASS_NAME>`
  Show packages, whose class name match parameter exactly
`--tag <PACKAGE_TAG>`
  Show packages, whose tags include parameter

### murano package-save

    usage: murano package-save [-p <PATH>] [--package-version PACKAGE_VERSION]
                               [--no-images]
                               <PACKAGE> [<PACKAGE> ...]

Save a package. This will download package(s) with all dependencies to specified path. If path doesn’t exist it will be created.

Positional arguments:

`<PACKAGE>`
  Package URL or name.

Optional arguments:

`-p <PATH>, --path <PATH>`
  Path to the directory to store package. If not set will use current directory.
`--package-version PACKAGE_VERSION`
  Version of the package to use from repository (ignored when saving with multiple packages).
`--no-images`
  If set will skip images downloading.

### murano package-show

    usage: murano package-show <ID>

Display details for a package.

Positional arguments:

`<ID>`
  Package ID to show.

### murano package-update

    usage: murano package-update [--is-public {true|false}]
                                 [--enabled {true|false}] [--name NAME]
                                 [--description DESCRIPTION]
                                 [--tags [<TAG> [<TAG> ...]]]
                                 <ID>

Update an existing package.

Positional arguments:

`<ID>`
  Package ID to update.

Optional arguments:

`--is-public {true|false}`
  Make package available to users from other tenants.
`--enabled {true|false}`
  Make package active and available for deployments.
`--name NAME`
  New name for the package.
`--description DESCRIPTION`
  New package description.
`--tags [<TAG> [<TAG> ...]]`
  A list of keywords connected to the application.

### murano static-action-call

    usage: murano static-action-call [--arguments [<KEY=VALUE> [<KEY=VALUE> ...]]]
                                     [--package-name <PACKAGE>]
                                     [--class-version CLASS_VERSION]
                                     <CLASS> <METHOD>

Call static method `METHOD` of the class `CLASS` with `ARGUMENTS`. Returns the result of the method execution. `PACKAGE` and `CLASS_VERSION` can be specified optionally to find class in a particular package and to look for the specific version of a class respectively.

Positional arguments:

`<CLASS>`
  FQN of the class with static method
`<METHOD>`
  Static method to run

Optional arguments:

`--arguments [<KEY=VALUE> [<KEY=VALUE> ...]]`
  Method arguments. No arguments by default
`--package-name <PACKAGE>`
  Optional FQN of the package to look for the class in
`--class-version CLASS_VERSION`
  Optional version of the class, otherwise version =0 is used

updated: 2018-01-24 20:42

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.

found an error? report a bug questions?