salt-cloud

SALT-CLOUD(1)                        Salt                        SALT-CLOUD(1)



NAME
       salt-cloud - Salt Cloud Command

       Provision virtual machines in the cloud with Salt

SYNOPSIS
          salt-cloud -m /etc/salt/cloud.map

          salt-cloud -m /etc/salt/cloud.map NAME

          salt-cloud -m /etc/salt/cloud.map NAME1 NAME2

          salt-cloud -p PROFILE NAME

          salt-cloud -p PROFILE NAME1 NAME2 NAME3 NAME4 NAME5 NAME6

DESCRIPTION
       Salt Cloud is the system used to provision virtual machines on various
       public clouds via a cleanly controlled profile and mapping system.

OPTIONS
       --version
              Print the version of Salt that is running.

       --versions-report
              Show program's dependencies and version number, and then exit

       -h, --help
              Show the help message and exit

       -c CONFIG_DIR, --config-dir=CONFIG_dir
              The location of the Salt configuration directory. This directory
              contains the configuration files for Salt master and minions.
              The default location on most systems is /etc/salt.

   Execution Options
       -L LOCATION, --location=LOCATION
              Specify which region to connect to.

       -a ACTION, --action=ACTION
              Perform an action that may be specific to this cloud provider.
              This argument requires one or more instance names to be
              specified.

       -f <FUNC-NAME> <PROVIDER>, --function=<FUNC-NAME> <PROVIDER>
              Perform an function that may be specific to this cloud provider,
              that does not apply to an instance. This argument requires a
              provider to be specified (i.e.: nova).

       -p PROFILE, --profile=PROFILE
              Select a single profile to build the named cloud VMs from. The
              profile must be defined in the specified profiles file.

       -m MAP, --map=MAP
              Specify a map file to use. If used without any other options,
              this option will ensure that all of the mapped VMs are created.
              If the named VM already exists then it will be skipped.

       -H, --hard
              When specifying a map file, the default behavior is to ensure
              that all of the VMs specified in the map file are created. If
              the --hard option is set, then any VMs that exist on configured
              cloud providers that are not specified in the map file will be
              destroyed. Be advised that this can be a destructive operation
              and should be used with care.

       -d, --destroy
              Pass in the name(s) of VMs to destroy, salt-cloud will search
              the configured cloud providers for the specified names and
              destroy the VMs. Be advised that this is a destructive operation
              and should be used with care. Can be used in conjunction with
              the -m option to specify a map of VMs to be deleted.

       -P, --parallel
              Normally when building many cloud VMs they are executed
              serially. The -P option will run each cloud vm build in a
              separate process allowing for large groups of VMs to be build at
              once.

              Be advised that some cloud provider's systems don't seem to be
              well suited for this influx of vm creation. When creating large
              groups of VMs watch the cloud provider carefully.

       -u, --update-bootstrap
              Update salt-bootstrap to the latest stable bootstrap release.

       -y, --assume-yes
              Default yes in answer to all confirmation questions.

       -k, --keep-tmp
              Do not remove files from /tmp/ after deploy.sh finishes.

       --show-deploy-args
              Include the options used to deploy the minion in the data
              returned.

       --script-args=SCRIPT_ARGS
              Script arguments to be fed to the bootstrap script when
              deploying the VM.

   Query Options
       -Q, --query
              Execute a query and return some information about the nodes
              running on configured cloud providers

       -F, --full-query
              Execute a query and print out all available information about
              all cloud VMs.  Can be used in conjunction with -m to display
              only information about the specified map.

       -S, --select-query
              Execute a query and print out selected information about all
              cloud VMs.  Can be used in conjunction with -m to display only
              information about the specified map.

       --list-providers
              Display a list of configured providers.

       --list-profiles
              New in version 2014.7.0.


              Display a list of configured profiles. Pass in a cloud provider
              to view the provider's associated profiles, such as
              digitalocean, or pass in all to list all the configured
              profiles.

   Cloud Providers Listings
       --list-locations=LIST_LOCATIONS
              Display a list of locations available in configured cloud
              providers. Pass the cloud provider that available locations are
              desired on, aka "linode", or pass "all" to list locations for
              all configured cloud providers

       --list-images=LIST_IMAGES
              Display a list of images available in configured cloud
              providers. Pass the cloud provider that available images are
              desired on, aka "linode", or pass "all" to list images for all
              configured cloud providers

       --list-sizes=LIST_SIZES
              Display a list of sizes available in configured cloud providers.
              Pass the cloud provider that available sizes are desired on, aka
              "AWS", or pass "all" to list sizes for all configured cloud
              providers

   Cloud Credentials
       --set-password=<USERNAME> <PROVIDER>
              Configure password for a cloud provider and save it to the
              keyring.  PROVIDER can be specified with or without a driver,
              for example: "--set-password bob rackspace" or more specific
              "--set-password bob rackspace:openstack" DEPRECATED!

   Output Options
       --out  Pass in an alternative outputter to display the return of data.
              This outputter can be any of the available outputters:
                 grains, highstate, json, key, overstatestage, pprint, raw,
                 txt, yaml

              Some outputters are formatted only for data returned from
              specific functions; for instance, the grains outputter will not
              work for non-grains data.

              If an outputter is used that does not support the data passed
              into it, then Salt will fall back on the pprint outputter and
              display the return data using the Python pprint standard library
              module.

              NOTE:
                 If using --out=json, you will probably want --static as well.
                 Without the static option, you will get a separate JSON
                 string per minion which makes JSON output invalid as a whole.
                 This is due to using an iterative outputter. So if you want
                 to feed it to a JSON parser, use --static as well.

       --out-indent OUTPUT_INDENT, --output-indent OUTPUT_INDENT
              Print the output indented by the provided value in spaces.
              Negative values disable indentation. Only applicable in
              outputters that support indentation.

       --out-file=OUTPUT_FILE, --output-file=OUTPUT_FILE
              Write the output to the specified file.

       --out-file-append, --output-file-append
              Append the output to the specified file.

       --no-color
              Disable all colored output

       --force-color
              Force colored output

              NOTE:
                 When using colored output the color codes are as follows:

                 green denotes success, red denotes failure, blue denotes
                 changes and success and yellow denotes a expected future
                 change in configuration.

       --state-output=STATE_OUTPUT, --state_output=STATE_OUTPUT
              Override the configured state_output value for minion output.
              One of 'full', 'terse', 'mixed', 'changes' or 'filter'. Default:
              'none'.

       --state-verbose=STATE_VERBOSE, --state_verbose=STATE_VERBOSE
              Override the configured state_verbose value for minion output.
              Set to True or False. Default: none.

EXAMPLES
       To create 4 VMs named web1, web2, db1, and db2 from specified profiles:

          salt-cloud -p fedora_rackspace web1 web2 db1 db2

       To read in a map file and create all VMs specified therein:

          salt-cloud -m /path/to/cloud.map

       To read in a map file and create all VMs specified therein in parallel:

          salt-cloud -m /path/to/cloud.map -P

       To delete any VMs specified in the map file:

          salt-cloud -m /path/to/cloud.map -d

       To delete any VMs NOT specified in the map file:

          salt-cloud -m /path/to/cloud.map -H

       To display the status of all VMs specified in the map file:

          salt-cloud -m /path/to/cloud.map -Q

SEE ALSO
       salt-cloud(7) salt(7) salt-master(1) salt-minion(1)

AUTHOR
       Thomas S. Hatch <thatch45@gmail.com> and many others, please see the
       Authors file



2019.2.0                         Jan 08, 2019                    SALT-CLOUD(1)