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-showList applications, added to specified environment.
bundle-importImport a bundle.
bundle-saveSave a bundle.
category-createCreate a category.
category-deleteDelete a category.
category-listList all available categories.
category-showDisplay category details.
class-schemaDisplay class schema
deployment-listList deployments for an environment or multiple environments.
env-template-add-appAdd application to the environment template.
env-template-cloneCreate a new template, cloned from template.
env-template-createCreate an environment template.
env-template-create-envCreate a new environment from template.
env-template-del-appDelete application from the environment template.
env-template-deleteDelete an environment template.
env-template-listList the environments templates.
env-template-showDisplay environment template details.
env-template-updateUpdate an environment template.
environment-action-callCall action `ACTION` in environment `ID`.
environment-action-get-resultGet result of `TASK` in environment `ID`.
environment-apps-editEdit environment’s object model.
environment-createCreate an environment.
environment-deleteDelete an environment.
environment-deployStart deployment of a murano environment session.
environment-listList the environments.
environment-model-editEdit an environment’s object model.
environment-model-showDisplay an environment’s object model.
environment-renameRename an environment.
environment-session-createCreates a new configuration session for environment ID.
environment-showDisplay environment details.
package-createCreate an application package.
package-deleteDelete a package.
package-downloadDownload a package to a filename or stdout.
package-importImport a package.
package-listList available packages.
package-saveSave a package.
package-showDisplay details for a package.
package-updateUpdate an existing package.
static-action-callCall static method `METHOD` of the class `CLASS` with `ARGUMENTS`.
bash-completionPrints all of the commands and options to stdout.
helpDisplay help about this program or one of its subcommands.
murano optional arguments¶
--versionShow program’s version number and exit.
-d, --debugDefaults to
env[MURANOCLIENT_DEBUG].-v, --verbosePrint more verbose output.
--cert-file OS_CERTDEPRECATED! Use –os-cert.
--key-file OS_KEYDEPRECATED! Use –os-key.
--ca-file OS_CACERTDEPRECATED! Use –os-cacert.
--api-timeout API_TIMEOUTNumber of seconds to wait for an API response, defaults to system socket timeout.
--os-tenant-id OS_TENANT_IDDefaults to
env[OS_TENANT_ID].--os-tenant-name OS_TENANT_NAMEDefaults to
env[OS_TENANT_NAME].--os-region-name OS_REGION_NAMEDefaults to
env[OS_REGION_NAME].--os-auth-token OS_AUTH_TOKENDefaults to
env[OS_AUTH_TOKEN].--os-no-client-authDo not contact keystone for a token. Defaults to
env[OS_NO_CLIENT_AUTH].--murano-url MURANO_URLDefaults to
env[MURANO_URL].--glance-url GLANCE_URLDefaults to
env[GLANCE_URL].--glare-url GLARE_URLDefaults to
env[GLARE_URL].--murano-api-version MURANO_API_VERSIONDefaults to
env[MURANO_API_VERSION]or 1.--os-service-type OS_SERVICE_TYPEDefaults to
env[OS_SERVICE_TYPE].--os-endpoint-type OS_ENDPOINT_TYPEDefaults to
env[OS_ENDPOINT_TYPE].--include-passwordSend os-username and os-password to murano.
--murano-repo-url MURANO_REPO_URLDefaults 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”--insecureExplicitly 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_URLAuthentication URL
--os-domain-id OS_DOMAIN_IDDomain ID to scope to
--os-domain-name OS_DOMAIN_NAMEDomain name to scope to
--os-project-id OS_PROJECT_IDProject ID to scope to
--os-project-name OS_PROJECT_NAMEProject name to scope to
--os-project-domain-id OS_PROJECT_DOMAIN_IDDomain ID containing project
--os-project-domain-name OS_PROJECT_DOMAIN_NAMEDomain name containing project
--os-trust-id OS_TRUST_IDTrust ID
--os-user-id OS_USER_IDUser ID
--os-username OS_USERNAME, --os-user-name OS_USERNAME, --os-user_name OS_USERNAMEUsername
--os-user-domain-id OS_USER_DOMAIN_IDUser’s domain id
--os-user-domain-name OS_USER_DOMAIN_NAMEUser’s domain name
--os-password OS_PASSWORDUser’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-publicMake 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-imagesIf 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_NAMEFQN of the package where the class is located
--class-version CLASS_VERSIONClass 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-environmentsLists 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-publicMake 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:
idID 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.
FILEFile 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:
--abandonIf 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-tenantsAllows 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-appsOnly 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 TYPEPackage 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.
fileFilename 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-publicMake the package available for users from other tenants.
--package-version PACKAGE_VERSIONVersion 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 LIMITShow limited number of packages
--marker MARKERShow 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_VERSIONVersion of the package to use from repository (ignored when saving with multiple packages).
--no-imagesIf 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 NAMENew name for the package.
--description DESCRIPTIONNew 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_VERSIONOptional version of the class, otherwise version =0 is used