123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- ==============================
- Salt Cloud 0.8.3 Release Notes
- ==============================
- Welcome to 0.8.3! While there are some new features, this release of Salt
- Cloud is primarily targeted at stability. Read on to see what's happened.
- Documentation
- =============
- The documentation for Salt Cloud can be found on Read the Docs:
- https://salt-cloud.readthedocs.io
- Download
- ========
- Salt Cloud can be downloaded and install via pypi or github:
- https://pypi.python.org/packages/source/s/salt-cloud/salt-cloud-0.8.3.tar.gz
- https://cloud.github.com/downloads/saltstack/salt-cloud/salt-cloud-0.8.3.tar.gz
- Some packages have been made available for salt-cloud and more on their
- way. Packages for Arch and FreeBSD are being made available thanks to the
- work of Christer Edwards, and packages for RHEL and Fedora are being created
- by Clint Savage. Package availability will be announced on the salt mailing list.
- No Deploy
- =========
- Salt Cloud was originally intended to spin up machines and deploy Salt on them,
- but several use cases have arisen in which this is not the appropriate action.
- For instance, when booting into new platforms which may not even support Salt
- just yet, it makes no sense to try and install a nonexistent package. In these
- instances, you can add the --no-deploy argument to the salt-cloud command to
- skip running the deploy script.
- It is also possible to configure Salt Cloud to default to never deploying:
- .. code-block:: yaml
- deploy: False
- Firing Events
- =============
- Salt Cloud is starting to make use of Salt's event system. If you are watching
- the event bus on the Salt Master, you can now watch for events to fire when
- minions are created or destroyed.
- Start Actions
- =============
- This is an experimental feature which some users may find handy. You may now
- configure a start_action for a deployed VM:
- .. code-block:: yaml
- start_action: state.highstate
- If configured, when the salt-cloud command runs the deploy script, it will open
- a subprocess to wait for the salt-minion service to start, and check in with
- the master (via the salt event bus). This feature does not currently work
- smoothly with all providers, particularly the ones which do not use "root" as
- the default login users. Your mileage will vary.
- Exception Handling
- ==================
- There were a handful of spots in the code which would exit when an error
- occurred, sometimes without any meaningful error messages. This was neither
- helpful to the user, nor Pythonic. Errors now should fire an exception of some
- sort, and if the error is Salt- or Salt Cloud-specific, a SaltException will be
- fired. This also helps pave the way for API usage of Salt Cloud.
- Provider-Specific Actions
- =========================
- This is largely a programmatic addition at this point, which will continue to
- expand into userland. All providers supported by libcloud provide a minimum
- level of functionality that Salt Cloud takes advantage of. Most providers also
- include a number of "extra" functions which are non-standard. Some of these
- are critical in certain instances. For instance, most providers will shut down
- a VM for you when you send a destroy command, but Joyent requires you to
- manually shut it down first. This was previously only doable via their web
- interface. You may now pass a supported --action (or -a) to a cloud provider:
- .. code-block:: bash
- salt-cloud --action stop joyentvm1
- All cloud providers support the destroy command via an action:
- .. code-block:: bash
- salt-cloud -a destroy mymachine1 mymachine2 mymachine2
- Human-Readable States
- =====================
- Most of our cloud providers are accessed via libcloud, which provides a
- numerical code declaring the current state of the machine. This state is
- viewable via the various query options. Unfortunately, if you don't know what
- the codes mean, they're largely useless to you. Now, with the -Q or --query
- option, a human-readable state (i.e. RUNNING) will de displayed instead).
- It should be noted that because some users are running salt-cloud via another
- script, the -F/--full-query and -S/--select-query options still return the
- numerical code.
- Various other Features and Stability Fixes
- ==========================================
- The above features addressed many stability issues. Additionally, the following
- have been addressed.
- Salt Cloud requires at least libcloud 0.11.4. If you are not running at least
- this version, an exception will be fired.
- A certain amount of minion configuration is required for all VMs. If you fail
- to specify any, a (mostly empty) minion config will be created for you. The
- default master for this config will be "salt".
- Previously, Joyent supported all Salt Cloud features without using Salt Cloud's
- own built-in deploy function. This is no longer the case, and so the Joyent
- module has been updated appropriately.
- Some log settings where previously ignored. This has been fixed.
- The Rackspace module previously would silently strip certain characters from
- a VM name. It now has a base set of characters that it will verify against, and
- raise an exception if an illegal character was specified. This functionality is
- also available for other cloud providers, but not currently set up for them.
- AWS introduced a new region in Sydney. This region is not available in the
- latest official libcloud release, but if you happen to be running libcloud out
- of trunk, it will be supported by Salt Cloud.
- Additional logging and PEP-8 fixes have also been applied. This should only
- affect developers.
|