8000 Merge branch '0.9.8' · linuxadmin/salt@9fcf884 · GitHub
[go: up one dir, main page]

Skip to content

Commit 9fcf884

Browse files
committed
Merge branch '0.9.8'
2 parents 1d1ab88 + 48c1e56 commit 9fcf884

File tree

226 files changed

+21577
-6109
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

226 files changed

+21577
-6109
lines changed

MANIFEST.in

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
11
include AUTHORS
22
include LICENSE
33
include README.rst
4+
include requirements.txt
5+
include tests/*.py
6+
recursive-include tests *.py
7+
include tests/integration/modules/files/*
8+
include tests/integration/files/*
9+
include tests/integration/tmp/_README
10+
include tests/unit/templates/files/*
11+
recursive-include doc *

README.rst

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ Salt is a distributed remote execution system used to execute commands and
1111
query data. It was developed in order to bring the best solutions found in the
1212
world of remote execution together and make them better, faster and more
1313
malleable. Salt accomplishes this via its ability to handle larger loads of
14-
information, and not just dozens, but hundreds or even thousands of individual
15-
servers, handle them quickly and through a simple and manageable interface.
14+
information, and not just dozens, but hundreds, or even thousands of individual
15+
servers. It handles them quickly and through a simple yet manageable interface.
1616

1717
Simplicity
1818
==========
@@ -30,61 +30,63 @@ Parallel Execution
3030
==================
3131

3232
The core function of Salt is to enable remote commands to be called in parallel
33-
rather than in serial, to use a secure and encrypted protocol, the smallest and
34-
fastest network payloads possible, and with a simple programmer interface. Salt
35-
also introduces more granular controls to the realm of remote execution,
33+
rather than in serial. It does this over a secure and encrypted protocol using
34+
the smallest and fastest network payloads possible. All of this is possible
35+
and salt still manages to have a simple interface for developers. Salt also
36+
introduces more granular controls to the realm of remote execution,
3637
allowing for commands to be executed in parallel and for systems to be targeted
37-
based on more than just hostname, but by system properties.
38+
based on more than just hostname, but by live system properties.
3839

3940
Building on Proven Technology
4041
=============================
4142

4243
Salt takes advantage of a number of technologies and techniques. The networking
43-
layer is built with the excellent `ZeroMQ`_ networking library, so Salt itself
44-
contains a viable, and transparent, AMQ broker inside the daemon. Salt uses
44+
layer is built with the excellent `ZeroMQ`_ networking library. Salt itself
45+
contains a viable, and transparent, 0MQ broker inside the daemon. Salt uses
4546
public keys for authentication with the master daemon, then uses faster AES
46-
encryption for payload communication, this means that authentication and
47+
encryption for payload communication. This means that authentication and
4748
encryption are also built into Salt. Salt takes advantage of communication via
48-
Python pickles, enabling fast and light network traffic.
49+
the most excellent `msgpack`_ library, enabling fast and light network traffic.
4950

5051
.. _`ZeroMQ`: http://www.zeromq.org/
5152

53+
.. _`msgpack`: http://msgpack.org/
54+
55+
5256
Python Client Interface
5357
=======================
5458

55-
In order to allow for simple expansion, Salt execution routines can be written
56-
as plain Python modules and the data collected from Salt executions can be sent
57-
back to the master server, or to any arbitrary program. Salt can be called from
58-
a simple Python API, or from the command line, so that Salt can be used to
59-
execute one-off commands as well as operate as an integral part of a larger
60-
application.
59+
Salt execution routines can be written as plain Python modules and the data
60+
collected from execution can be sent back to the master server, or any
61+
arbitrary program. Salt can be called from a simple Python API, or from the
62+
command line. This makes it easy to execute one-off commands as well as
63+
operate as an integral part of a larger application.
64+
6165

6266
Fast, Flexible, Scalable, Secure
6367
================================
6468

6569
The result is a system that can execute commands across groups of
6670
varying size, from very few to very many servers at considerably high
67-
speed. A system that is very fast, easy to set up and amazingly
68-
malleable, able to suit the needs of any number of servers working
69-
within the same system. Salt’s unique architecture brings together the
70-
best of the remote execution world, amplifies its capabilities and
71-
expands its range, resulting in this system that is as versatile as it
72-
is practical, able to suit any network. Our source code is pretty
73-
(*pep8*, *pylint*, *pychecker*), well documented, and since we use a
71+
speed. We consider speed to be a feature, not an afterthought. Salt’s
72+
unique architecture brings together the best of the remote execution
73+
world, amplifies its capabilities and expands its range, resulting in
74+
this system that is as versatile as it is practical. Our source code is
75+
pretty (*pep8*, *pylint*, *pychecker*), well documented, and since we use a
7476
battle-tested branching model (*gitflow*), we are able to deliver
7577
stable software while keeping a fast pace. Last but not least,
7678
security is an intrinsic part of salt and something not just
7779
influencing how source code is written and how tests are done, but
7880
also something that defines the overall architecture and has heavy
79-
influence on the core design of salt.
81+
influence on the core design tenants.
8082

8183
Open
8284
====
8385

8486
Salt is developed under the `Apache 2.0 licence`_, and can be used for
8587
open and proprietary projects. Please submit your expansions back to
8688
the Salt project so that we can all benefit together as Salt grows.
87-
So, please feel free to sprinkle some of this around your systems and
88-
let the deliciousness come forth.
89+
Finally, please sprinkle some salt around your systems and let the
90+
deliciousness come forth.
8991

9092
.. _`Apache 2.0 licence`: http://www.apache.org/licenses/LICENSE-2.0.html

conf/master.template

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,19 @@
113113
# The buffer size in the file server can be adjusted here:
114114
#file_buffer_size: 1048576
115115

116+
# Pillar Configurations:
117+
# The Salt Pillar, is a system that allows for the building of global data
118+
# that is refined based on minion. Basically, the pillar creates data that
119+
# can be generated to be specific based on the grains of the minion. Pillar
120+
# is laid out in the same fashion as the file server, with environments, a top
121+
# file and sls files. The difference is that the data does not need to be
122+
# in the highstate format, and is generally just key/val F438 ue pairs.
123+
#
124+
#pillar_roots:
125+
# base:
126+
# - /srv/pillar
127+
#
128+
116129
##### Syndic settings #####
117130
##########################################
118131
# The Salt syndic is used to pass commands through a master from a higher
@@ -127,7 +140,7 @@
127140
#order_masters: False
128141
#
129142
# If this master will be running a salt syndic daemon, syndic_master tells
130-
# this master where to recieve commands from.
143+
# this master where to receive commands from.
131144
#syndic_master: masterofmaster
132145

133146
##### Peer Publish settings #####
@@ -202,3 +215,8 @@
202215
# group1: 'L@foo.domain.com,bar.domain.com,baz.domain.com and bl*.domain.com',
203216
# group2: 'G@os:Debian and foo.domain.com',
204217

218+
##### Range Cluster settings #####
219+
##########################################
220+
# The range server (and optional port) that
221+
# serves your cluster information
222+
#range_server: range:80

conf/minion.template

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@
2424
# clusters.
2525
#id:
2626

27+
# Append a domain to a hostname in the event that it does not exist. This is
28+
# usefule for systems where socket.getfqdn() does not actually result in a
29+
# FQDN (for instance, Solaris).
30+
#append_domain:
31+
2732
# If the the connection to the server is interrupted, the minion will
2833
# attempt to reconnect. sub_timeout allows you to control the rate
2934
# of reconnection attempts (in seconds). To disable reconnects, set
@@ -44,6 +49,10 @@
4449
# seconds, between those reconnection attempts.
4550
#acceptance_wait_time = 10
4651

52+
# When healing a dns_check is run, this is to make sure that the originally
53+
# resolved dns has not changed, if this is something that does not happen in
54+
# your environment then set this value to False.
55+
#dns_check: True
4756

4857

4958
##### Minion module management #####
@@ -62,6 +71,14 @@
6271
#states_dirs: []
6372
#render_dirs: []
6473
#
74+
# A module provider can be statically overwritten or extended for the minion
75+
# via the providers option, in this case the default module will be
76+
# overwritten by the specified module. In this example the pkg module will
77+
# be provided by the yumpkg5 module instead of the system default.
78+
#
79+
# providers:
80+
# pkg: yumpkg5
81+
#
6582
# Enable Cython modules searching and loading. (Default: False)
6683
#cython_enable: False
6784

@@ -101,6 +118,54 @@
101118
# by statically setting it. Remember that the recommended way to manage
102119
# environments is to issolate via the top file.
103120
#environment: None
121+
#
122+
# If using the local file directory, then the state top file name needs to be
123+
# defined, by default this is top.sls.
124+
#state_top: top.sls
125+
126+
##### File Directory Settings #####
127+
##########################################
128+
# The Salt Minion can redirect all file server operations to a local directory,
129+
# this allows for the same state tree that is on the master to be used if
130+
# coppied completely onto the minion. This is a literal copy of the settings on
131+
# the master but used to reference a local directory on the minion.
132+
133+
# Set the file client, the client defaults to looking on the master server for
134+
# files, but can be directed to look at the local file directory setting
135+
# defined below by setting it to local.
136+
#file_client: remote
137+
138+
# The file directory works on environments passed to the minion, each environment
139+
# can have multiple root directories, the subdirectories in the multiple file
140+
# roots cannot match, otherwise the downloaded files will not be able to be
141+
# reliably ensured. A base environment is required to house the top file.
142+
# Example:
143+
# file_roots:
144+
# base:
145+
# - /srv/salt/
146+
# dev:
147+
# - /srv/salt/dev/services
148+
# - /srv/salt/dev/states
149+
# prod:
150+
# - /srv/salt/prod/services
151+
# - /srv/salt/prod/states
152+
#
153+
# Default:
154+
#file_roots:
155+
# base:
156+
# - /srv/salt
157+
158+
# The hash_type is the hash to use when discovering the hash of a file in
159+
# the minion directory, the default is md5, but sha1, sha224, sha256, sha384
160+
# and sha512 are also supported.
161+
#hash_type: md5
162+
163+
# The Salt pillar is searched for locally if file_client is set to local. If
164+
# this is the case, and pillar data is defined, then the pillar_roots need to
165+
# also be configured on the minion:
166+
#pillar_roots:
167+
# base:
168+
# - /srv/pillar
104169

105170
###### Security settings #####
106171
###########################################

doc/_templates/domainindex.html

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{% extends "!domainindex.html" %}
2+
3+
{%- block rootrellink %}
4+
<li><a href="http://saltstack.org">&laquo; SaltStack.org</a>&nbsp;|&nbsp;</li>
5+
<li><a href="{{ pathto('index') }}">Documentation home</a></li>
6+
{%- endblock %}

doc/_templates/page.html

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{% extends "!page.html" %}
2+
3+
{%- block rootrellink %}
4+
<li><a href="http://saltstack.org">&laquo; SaltStack.org</a>&nbsp;|&nbsp;</li>
5+
<li><a href="{{ pathto('index') }}">Documentation home</a></li>
6+
{%- endblock %}

doc/conf.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ def __getattr__(self, name):
3030
MOCK_MODULES = [
3131
# salt core
3232
'yaml',
33+
'yaml.nodes',
34+
'yaml.constructor',
3335
'msgpack',
3436
'zmq',
3537
'Crypto',

doc/contents.rst

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,23 @@ Full Table of Contents
77
:glob:
88

99
topics/index
10+
topics/installation/index
1011
topics/configuration
12+
topics/targeting/index
1113
topics/tutorials/modules
14+
topics/tutorials/starting_states
1215
topics/tutorials/states*
16+
topics/tutorials/firewall
17+
topics/tutorials/bootstrap_ec2
18+
topics/pillar/index
19+
topics/jobs/index
20+
topics/troubleshooting/index
21+
topics/troubleshooting/yaml_idiosyncrasies
1322
topics/community
1423

1524
ref/index
1625
ref/modules/*
1726
ref/modules/all/index
18-
ref/grains
1927
ref/returners/*
2028
ref/returners/all/index
2129
ref/states/*
@@ -27,6 +35,8 @@ Full Table of Contents
2735
ref/syndic
2836
ref/python-api
2937
ref/file_server/index
38+
ref/file_server/file_roots
39+
ref/file_server/dynamic-modules
3040
ref/configuration/*
3141

3242
ref/cli/index
@@ -39,5 +49,6 @@ Full Table of Contents
3949
ref/cli/salt-run
4050
ref/cli/salt-syndic
4151

52+
topics/specs/salt_auth_proto_abs
4253
topics/roadmap/index
4354
topics/releases/index

0 commit comments

Comments
 (0)
0