Command Line

unfurl

unfurl [OPTIONS] COMMAND [ARGS]...

Options

--home <home>

Path to .unfurl_home

--runtime <runtime>

use this runtime

--no-runtime

ignore runtime settings

-v, --verbose

verbose mode (-vvv for more)

-q, --quiet

Only output errors to the stdout

--logfile <logfile>

Log messages to file (at DEBUG level)

--tmp <tmp>

Directory for saving temporary files

--loglevel <loglevel>

log level (overrides -v)

--version-check <version_check>

Abort if the runtime’s Unfurl is older than the given version

--no-version-check

Skip the Unfurl version check when invoking the runtime.

Environment variables

UNFURL_HOME

Provide a default for --home

UNFURL_RUNTIME

Provide a default for --runtime

UNFURL_NORUNTIME

Provide a default for --no-runtime

UNFURL_LOGFILE

Provide a default for --logfile

UNFURL_TMPDIR

Provide a default for --tmp

UNFURL_LOGGING

Provide a default for --loglevel

UNFURL_VERSION_CHECK

Provide a default for --version-check

check

Check and update the status of the ensemble’s instances

unfurl check [OPTIONS] [ENSEMBLE]

Options

--force

(Re)run operation regardless of instance’s status or state

--starttime <starttime>

Set the start time of the job.

--output <output>

How to print summary of job run

Options

text | json | none

--trace <trace>

Set the query’s trace level

--query <query>

Run the given expression upon job completion

--instance <instance>

instance name to target

--template <template>

TOSCA template to target

--change-detection <change_detection>

How to detect configuration changes to existing instances. (Default: evaluate)

Options

skip | spec | evaluate

--skip-new

Don’t create instance for new templates.

--jobexitcode <jobexitcode>

Set exit code to 1 if job status is not ok. (Default: never)

Options

error | degraded | never

-m, --message <message>

commit message to use

--dirty <dirty>

Action if there are uncommitted changes before run. (Default: auto)

Options

abort | ok | auto

--commit

Commit modified files to the instance repository. (Default: false)

--dryrun

Do not modify anything, just do a dry run.

Arguments

ENSEMBLE

Optional argument

clone

Create a new ensemble or project from a service template or an existing ensemble or project.

SOURCE Path or git url to a project, ensemble, or service template

DEST Path to the new project or ensemble

unfurl clone [OPTIONS] SOURCE [DEST]

Options

--mono

Create one repository for the project.

--existing

Add project to nearest existing repository.

--empty

Don’t create a default ensemble.

--use-environment <use_environment>

Associate the given environment with the ensemble.

--skeleton <skeleton>

Path to a directory of project skeleton templates.

--overwrite

Create ensemble in the given directory even if it exists.

--use-deployment-blueprint <use_deployment_blueprint>

Use this deployment blueprint.

Arguments

SOURCE

Required argument

DEST

Optional argument

commit

Commit any outstanding changes to the given project or ensemble.

unfurl commit [OPTIONS] [PROJECT_OR_ENSEMBLE_PATH]

Options

-m, --message <message>

commit message to use

--no-edit

Use default message instead of invoking the editor

--skip-add

Don’t add files for committing (user must add using git)

Arguments

PROJECT_OR_ENSEMBLE_PATH

Optional argument

deploy

Deploy the given ensemble

unfurl deploy [OPTIONS] [ENSEMBLE]

Options

--force

(Re)run operation regardless of instance’s status or state

--starttime <starttime>

Set the start time of the job.

--output <output>

How to print summary of job run

Options

text | json | none

--trace <trace>

Set the query’s trace level

--query <query>

Run the given expression upon job completion

--instance <instance>

instance name to target

--template <template>

TOSCA template to target

--check

check if new instances exist before deploying

--destroyunmanaged

include unmanaged instances for consideration when destroying

--prune

destroy instances that are no longer used

--upgrade

Apply major versions changes.

--repair <repair>

Re-run operations on instances that are in an error or degraded state. (Default: error)

Options

error | degraded | none

--change-detection <change_detection>

How to detect configuration changes to existing instances. (Default: evaluate)

Options

skip | spec | evaluate

--skip-new

Don’t create instance for new templates.

-a, --approve

Don’t prompt for approval to apply changes.

--jobexitcode <jobexitcode>

Set exit code to 1 if job status is not ok. (Default: never)

Options

error | degraded | never

-m, --message <message>

commit message to use

--dirty <dirty>

Action if there are uncommitted changes before run. (Default: auto)

Options

abort | ok | auto

--commit

Commit modified files to the instance repository. (Default: false)

--dryrun

Do not modify anything, just do a dry run.

Arguments

ENSEMBLE

Optional argument

Environment variables

UNFURL_APPROVE

Provide a default for -a

discover

Run the “discover” workflow which updates the ensemble’s spec by probing its live instances.

unfurl discover [OPTIONS] [ENSEMBLE]

Options

--force

(Re)run operation regardless of instance’s status or state

--starttime <starttime>

Set the start time of the job.

--output <output>

How to print summary of job run

Options

text | json | none

--trace <trace>

Set the query’s trace level

--query <query>

Run the given expression upon job completion

--instance <instance>

instance name to target

--template <template>

TOSCA template to target

-a, --approve

Don’t prompt for approval to apply changes.

--jobexitcode <jobexitcode>

Set exit code to 1 if job status is not ok. (Default: never)

Options

error | degraded | never

-m, --message <message>

commit message to use

--dirty <dirty>

Action if there are uncommitted changes before run. (Default: auto)

Options

abort | ok | auto

--commit

Commit modified files to the instance repository. (Default: false)

--dryrun

Do not modify anything, just do a dry run.

Arguments

ENSEMBLE

Optional argument

Environment variables

UNFURL_APPROVE

Provide a default for -a

export

Export ensemble in a simplified json format.

unfurl export [OPTIONS] [PROJECT_OR_ENSEMBLE_PATH]

Options

--format <format>
Options

blueprint | environments | deployment

Arguments

PROJECT_OR_ENSEMBLE_PATH

Optional argument

git

unfurl git [git command] [git command arguments]: Run the given git command on each project repository.

unfurl git [OPTIONS] [GITARGS]...

Options

--dir <dir>

Path to project or ensemble (default: “.”)

Arguments

GITARGS

Optional argument(s)

git-status

Show the git status for paths relevant to the given project or ensemble.

unfurl git-status [OPTIONS] [PROJECT_OR_ENSEMBLE_PATH]

Options

--dirty

Only show repositories with uncommitted changes

Arguments

PROJECT_OR_ENSEMBLE_PATH

Optional argument

help

Get help on a command

unfurl help [OPTIONS] [CMD]

Arguments

CMD

Optional argument

home

If no options are set, display the location of current unfurl home. To create a new home project use –init and the global –home option.

unfurl home [OPTIONS]

Options

--render

Generate files only (don’t create repository)

--init

Create a new home project

--replace

Replace (and backup) current home project

init

Create a new project or, if [project_dir] exists or is inside a project, create a new ensemble. If [ensemble_name] is omitted, use a default name.

unfurl init [OPTIONS] [PROJECTDIR] [ENSEMBLE_NAME]

Options

--mono

Don’t create a separate ensemble repository.

--existing

Add project to nearest existing repository.

--submodule

Set the ensemble repository as a git submodule.

--empty

Don’t create a default ensemble.

--skeleton <skeleton>

Absolute path to a directory of project skeleton templates.

--create-environment

Create (if missing) a environment with the same name and set this as the default repository for ensembles that use this environment.

--use-environment <use_environment>

Associate the given environment with this ensemble.

--shared-repository <shared_repository>

Create the ensemble in an repository outside the project.

--overwrite <overwrite>

Create ensemble in the given directory even if it exists.

--render

Generate files only (don’t commit them).

--use-deployment-blueprint <use_deployment_blueprint>

Use this deployment blueprint.

Arguments

PROJECTDIR

Optional argument

ENSEMBLE_NAME

Optional argument

plan

Print the given deployment plan

unfurl plan [OPTIONS] [ENSEMBLE]

Options

--force

(Re)run operation regardless of instance’s status or state

--starttime <starttime>

Set the start time of the job.

--output <output>

How to print summary of job run

Options

text | json | none

--trace <trace>

Set the query’s trace level

--query <query>

Run the given expression upon job completion

--instance <instance>

instance name to target

--template <template>

TOSCA template to target

--check

check if new instances exist before deploying

--destroyunmanaged

include unmanaged instances for consideration when destroying

--prune

destroy instances that are no longer used

--upgrade

Apply major versions changes.

--repair <repair>

Re-run operations on instances that are in an error or degraded state. (Default: error)

Options

error | degraded | none

--change-detection <change_detection>

How to detect configuration changes to existing instances. (Default: evaluate)

Options

skip | spec | evaluate

--skip-new

Don’t create instance for new templates.

--workflow <workflow>

plan workflow (default: deploy)

Arguments

ENSEMBLE

Optional argument

run

Run an ad-hoc command in the context of the given ensemble. Use “–” to separate the given command line, for example:

> unfurl run – echo ‘hello!’

If –host or –module is set, the ansible configurator will be used. e.g.:

> unfurl run –host=example.com – echo ‘hello!’

unfurl run [OPTIONS] [CMDLINE]...

Options

--ensemble <ensemble>
-a, --approve

Don’t prompt for approval to apply changes.

--jobexitcode <jobexitcode>

Set exit code to 1 if job status is not ok. (Default: never)

Options

error | degraded | never

-m, --message <message>

commit message to use

--dirty <dirty>

Action if there are uncommitted changes before run. (Default: auto)

Options

abort | ok | auto

--commit

Commit modified files to the instance repository. (Default: false)

--dryrun

Do not modify anything, just do a dry run.

--force

(Re)run operation regardless of instance’s status or state

--starttime <starttime>

Set the start time of the job.

--output <output>

How to print summary of job run

Options

text | json | none

--trace <trace>

Set the query’s trace level

--query <query>

Run the given expression upon job completion

--instance <instance>

instance name to target

--template <template>

TOSCA template to target

--host <host>

host to run the command on

--operation <operation>

TOSCA operation to run

--module <module>

ansible module to run (default: command)

Arguments

CMDLINE

Optional argument(s)

Environment variables

UNFURL_APPROVE

Provide a default for -a

runtime

If no options are set, display the runtime currently used by the project. To create a new runtime in the project root use –init and the global –runtime option.

unfurl runtime [OPTIONS] [PROJECT_FOLDER]

Options

--init

Create a new runtime

Arguments

PROJECT_FOLDER

Optional argument

status

“Show the status of deployed resources in the given ensemble.

unfurl status [OPTIONS] [ENSEMBLE]

Options

--query <query>

Run the given expression

--trace <trace>

Set the query’s trace level

Arguments

ENSEMBLE

Optional argument

stop

Stop running instances.

unfurl stop [OPTIONS] [ENSEMBLE]

Options

--force

(Re)run operation regardless of instance’s status or state

--starttime <starttime>

Set the start time of the job.

--output <output>

How to print summary of job run

Options

text | json | none

--trace <trace>

Set the query’s trace level

--query <query>

Run the given expression upon job completion

--instance <instance>

instance name to target

--template <template>

TOSCA template to target

-a, --approve

Don’t prompt for approval to apply changes.

--jobexitcode <jobexitcode>

Set exit code to 1 if job status is not ok. (Default: never)

Options

error | degraded | never

-m, --message <message>

commit message to use

--dirty <dirty>

Action if there are uncommitted changes before run. (Default: auto)

Options

abort | ok | auto

--commit

Commit modified files to the instance repository. (Default: false)

--dryrun

Do not modify anything, just do a dry run.

Arguments

ENSEMBLE

Optional argument

Environment variables

UNFURL_APPROVE

Provide a default for -a

undeploy

Destroy what was deployed.

unfurl undeploy [OPTIONS] [ENSEMBLE]

Options

--force

(Re)run operation regardless of instance’s status or state

--starttime <starttime>

Set the start time of the job.

--output <output>

How to print summary of job run

Options

text | json | none

--trace <trace>

Set the query’s trace level

--query <query>

Run the given expression upon job completion

--instance <instance>

instance name to target

--template <template>

TOSCA template to target

-a, --approve

Don’t prompt for approval to apply changes.

--jobexitcode <jobexitcode>

Set exit code to 1 if job status is not ok. (Default: never)

Options

error | degraded | never

-m, --message <message>

commit message to use

--dirty <dirty>

Action if there are uncommitted changes before run. (Default: auto)

Options

abort | ok | auto

--commit

Commit modified files to the instance repository. (Default: false)

--dryrun

Do not modify anything, just do a dry run.

--destroyunmanaged

include unmanaged instances for consideration when destroying

Arguments

ENSEMBLE

Optional argument

Environment variables

UNFURL_APPROVE

Provide a default for -a

version

Print the current version

unfurl version [OPTIONS]

Options

--semver

Print only the semantic version

--remote

Also print the version installed in the current runtime.