0.17.0.rst 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. .. _release-0-17-0:
  2. =========================
  3. Salt 0.17.0 Release Notes
  4. =========================
  5. :release: 2013-09-26
  6. The 0.17.0 release is a very exciting release of Salt, this brings to Salt
  7. some very powerful new features and advances. The advances range from the
  8. state system to the test suite, covering new transport capabilities and
  9. making states easier and more powerful, to extending Salt Virt and much more!
  10. The 0.17.0 release will also be the last release of Salt to follow the old
  11. 0.XX.X numbering system, the next release of Salt will change the numbering to
  12. be date based following this format:
  13. <Year>.<Month>.<Minor>
  14. So if the release happens in November of 2013 the number will be 13.11.0, the
  15. first bugfix release will be 13.11.1 and so forth.
  16. Major Features
  17. ==============
  18. Halite
  19. ------
  20. The new Halite web GUI is now available on PyPI. A great deal of work has
  21. been put into Halite to make it fully event driven and amazingly fast. The
  22. Halite UI can be started from within the Salt Master (after being installed
  23. from PyPI), or standalone, and does not require an external database to run.
  24. It is very lightweight!
  25. This initial release of Halite is primarily the framework for the UI and the
  26. communication systems, making it easy to extend and build the UI up. It
  27. presently supports watching the event bus and firing commands over Salt.
  28. At this time, Halite is not available as a package, but installation
  29. documentation is available at:
  30. http://docs.saltstack.com/topics/tutorials/halite.html
  31. Halite is, like the rest of Salt, Open Source!
  32. Much more will be coming in the future of Halite!
  33. Salt SSH
  34. --------
  35. The new ``salt-ssh`` command has been added to Salt. This system allows for
  36. remote execution and states to be run over ssh. The benefit here being, that
  37. salt can run relying only on the ssh agent, rather than requiring a minion
  38. to be deployed.
  39. The ``salt-ssh`` system runs states in a compatible way as Salt and states
  40. created and run with salt-ssh can be moved over to a standard salt deployment
  41. without modification.
  42. Since this is the initial release of salt-ssh, there is plenty of room for
  43. improvement, but it is fully operational, not just a bootstrap tool.
  44. Rosters
  45. -------
  46. Salt is designed to have the minions be aware of the master and the master does
  47. not need to be aware of the location of the minions. The new salt roster system
  48. was created and designed to facilitate listing the targets for salt-ssh.
  49. The roster system, like most of Salt, is a plugin system, allowing for the list
  50. of systems to target to be derived from any pluggable backend. The rosters
  51. shipping with 0.17.0 are flat and scan. Flat is a file which is read in via the
  52. salt render system and the scan roster does simple network scanning to discover
  53. ssh servers.
  54. State Auto Order
  55. ----------------
  56. This is a major change in how states are evaluated in Salt. State Auto Order
  57. is a new feature that makes states get evaluated and executed in the order in
  58. which they are defined in the sls file. This feature makes it very easy to
  59. see the finite order in which things will be executed, making Salt now, fully
  60. imperative AND fully declarative.
  61. The requisite system still takes precedence over the order in which states are
  62. defined, so no existing states should break with this change. But this new
  63. feature can be turned off by setting ``state_auto_order: False`` in the master
  64. config, thus reverting to the old lexicographical order.
  65. state.sls Runner
  66. ----------------
  67. The ``state.sls`` runner has been created to allow for a more powerful system
  68. for orchestrating state runs and function calls across the salt minions. This
  69. new system uses the state system for organizing executions.
  70. This allows for states to be defined that are executed on the master to call
  71. states on minions via ``salt-run state.sls``.
  72. Salt Thin
  73. ---------
  74. Salt Thin is an exciting new component of Salt, this is the ability to execute
  75. Salt routines without any transport mechanisms installed, it is a pure python
  76. subset of Salt.
  77. Salt Thin does not have any networking capability, but can be dropped into any
  78. system with Python installed and then ``salt-call`` can be called directly. The
  79. Salt Thin system, is used by the ``salt-ssh`` command, but can still be used to
  80. just drop salt somewhere for easy use.
  81. Event Namespacing
  82. -----------------
  83. Events have been updated to be much more flexible. The tags in events have all
  84. been namespaced allowing easier tracking of event names.
  85. Mercurial Fileserver Backend
  86. ----------------------------
  87. The popular git fileserver backend has been joined by the mercurial fileserver
  88. backend, allowing the state tree to be managed entirely via mercurial.
  89. External Logging Handlers
  90. -------------------------
  91. The external logging handler system allows for Salt to directly hook into any
  92. external logging system. Currently supported are sentry and logstash.
  93. Jenkins Testing
  94. ---------------
  95. The testing systems in Salt have been greatly enhanced, tests for salt are now
  96. executed, via jenkins.saltstack.com, across many supported platforms. Jenkins
  97. calls out to salt-cloud to create virtual machines on Rackspace, then the
  98. minion on the virtual machine checks into the master running on Jenkins where
  99. a state run is executed that sets up the minion to run tests and executes the
  100. test suite.
  101. This now automates the sequence of running platform tests and allows for
  102. continuous destructive tests to be run.
  103. Salt Testing Project
  104. --------------------
  105. The testing libraries for salt have been moved out of the main salt code base
  106. and into a standalone codebase. This has been done to ease the use of the
  107. testing systems being used in salt based projects other than Salt itself.
  108. StormPath External Authentication
  109. ---------------------------------
  110. The external auth system now supports the fantastic Stormpath cloud based
  111. authentication system.
  112. LXC Support
  113. -----------
  114. Extensive additions have been added to Salt for LXC support. This included
  115. the backend libs for managing LXC containers. Addition into the salt-virt
  116. system is still in the works.
  117. macOS User/Group Support
  118. ------------------------
  119. Salt is now able to manage users and groups on Minions running macOS.
  120. However, at this time user passwords cannot be managed.
  121. Django ORM External Pillar
  122. --------------------------
  123. Pillar data can now be derived from Django managed databases.
  124. Fixes from RC to release
  125. ------------------------
  126. - Multiple documentation fixes
  127. - Add multiple source files + templating for :mod:`file.append
  128. <salt.states.file.append>` (:issue:`6905`)
  129. - Support sysctl configuration files in systemd>=207 (:issue:`7351`)
  130. - Add :mod:`file.search <salt.modules.file.search>` and :mod:`file.replace
  131. <salt.modules.file.replace>`
  132. - Fix cross-calling execution functions in provider overrides
  133. - Fix locale override for postgres (:issue:`4543`)
  134. - Fix Raspbian identification for service/pkg support (:issue:`7371`)
  135. - Fix :mod:`cp.push <salt.modules.cp.push>` file corruption (:issue:`6495`)
  136. - Fix ALT Linux password hash specification (:issue:`3474`)
  137. - Multiple salt-ssh-related fixes and improvements