0.8.3.rst 5.4 KB

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